2011-01-31 4 views
2

프로젝트의 상황에서 두 가지 유형 (현재는 최소한) : 예약 및 이동 목록이 있습니다. 두리스트는 모두 로직을 포함하는 List 객체와 개별 기능을위한 별도의 Shift 및 Booking리스트 객체를 갖도록 만들어졌습니다.어떤 디자인 패턴을 선택해야합니까?

List 개체가 압도적입니다. 페이지 매김, 편집기 기능, 선택 및 더블 클릭으로 팝업을 열거 나, 마우스를 움직일 수있는 팝업과 필터링 및 페이징 기능이 있습니다. 좀 더 유지 보수가 가능한 코드를 리팩토링하고 싶습니다. 내가 생각할 수있는 디자인 패턴은 무엇입니까?

List 객체는 3k 줄 이상의 OO JavaScript 코드를 포함합니다.

+1

유용한 도움말을 얻으려면 일부 코드를 게시해야합니다. 아마 당신은 http://codereview.stackexchange.com에 그것 (적어도 조각)을 게시 할 수 있고 사람들이 좀 더 도움을 줄 수 없는지 알 수있을 것입니다. 지금 서있는 것처럼 나는 그 질문에 정말로 대답 할 수 없다고 말하고 싶습니다. –

답변

6

사실 그것은 압도적입니다. 간단한 대답이나 선택한 디자인 패턴이 없습니다. "separation of concern"디자인 원리를 적용하기 시작할 것입니다. 하나의 클래스/함수 집합은 한 가지 작업을 수행합니다. 이는 복잡성을 줄이는 데 도움이됩니다. 그런 다음 structural design patterns을 신청할 수 있습니다. 우선 위임을 사용할 수 있습니다. 귀하의 경우에 decorator design pattern은 기본 목록을 사용법에 따라 "장식"할 수있는만큼 적합 할 수 있습니다 ...

DP를 생각하기에 앞서 분별력을 고려하여 코드를 이해하기 쉬운 부분으로 나누십시오. 그런 다음 일부 DP를 사용하여 모두 연결하십시오.

행운을 빈다.

관련 문제