2008-08-25 4 views
11

지난 10 년 동안 크리스토퍼 알렉산더 (Christopher Alexander)의 신작 "The Nature of Order"와 소프트웨어에 어떻게 적용될 수 있는지에 관한 기사와 논문이 흩어졌습니다.디자인 패턴을 넘어?

불행히도 James Coplien과 Richard Gabriel의 작품 만 있습니다. 적어도 Google을 통해 그런 것들을 찾으려는 나의 시도에서 그 이상은 없습니다.

어디서나 이런 종류의 토론이 있습니까?

MSN


@Georgia

내 질문은 디자인 패턴 또는 패턴 언어에 대한 아니다; 크리스토퍼 알렉산더 (Christopher Alexander)의 작업이 소프트웨어에 더 많이 적용될 수 있는지 알아보기 위해 노력하고 있습니다. 아키텍처 및 건물보다 물리적 인 제약이 훨씬 적기 때문에 가능할 수 있습니다.

디자인 패턴과 패턴 언어는 알렉산더의 디자인 패턴의 구조를 채택한 것처럼 보이지만 많은 부분이 본질을 포착하지는 않습니다. 특정 상황에서 문제를 해결하는 것 이상의 본질.

나중에 알렉산더의 작품 중 일부를 참조 점으로 사용하지 않으면 설명하기 어렵습니다.

편집 : 아니요, 제가 다시 가져옵니다.

예를 들어 Alcoves라고하는 아키텍처 디자인 패턴이 있습니다. 이 패턴은 상황의 상황에 뿌리를 둔 문맥뿐만 아니라 건축물의 목적에 관한 기본에 뿌리를 둔 문맥을 가지고있다. Alcove 패턴의 경우 가족 구성원이 육체적으로 함께 할 수 있어야하기 때문에 여러 사람들이 서로 다른 일을하면서 같은 지역에있을 수있는 영역을 원한다는 맥락이 있습니다 다른 가족 구성원들을 혼란스럽게하는 경향이있는 것들.

대부분의 소프트웨어 디자인 패턴은 문맥상의 문제를 설명하지만 문제가 왜 중요한지 또는 소프트웨어가 근본적으로 문제가되는 이유에 대해 더 자세히 설명하지는 않습니다. 그것은 부적합하거나 blithely, 이는 디자인 패턴의 의도와 정확히 반대의 디자인 패턴을 적용하기가 매우 쉽습니다.

MSN

+0

나는 GRASP 패턴이 묻는 질문에 대한 구체적인 사실적 대답을 구성한다고 생각합니다. https://en.wikipedia.org/wiki/GRASP_%28object-oriented_design%29 – srm

답변

1

에서 자신의 책에서 에릭 에반스에 의해 만들어진 의견의 일부를 떠올리게 시작하십시오. 그는 소프트웨어 개발의 디자인 패턴은 기술 문제에 대한 엄격한 기술 솔루션으로 종종 기술되어 왔다고 지적합니다. 그러나 때로는 소프트웨어 구현에 구조를 제공 할뿐만 아니라 비즈니스 모델에서도 의미있는 패턴을 적용 할 수있는 기회가 있습니다.

예를 들어, STRATEGY 패턴을 구현 세부 사항으로 사용하는 것과 비교하여, 실제로 프로그래머와 비즈니스가 STRATEGIES를 선택하고 사용하는 방법에 대해 이야기하는 것이 바람직한 경우를 생각해보십시오.시스템의 유비쿼터스 언어의 일부입니다.

도메인 계층에서 기술 디자인 패턴을 사용하는 경우, 또 다른 동기 부여 계층을 추가해야합니다. STRATEGY가 실제 비즈니스 전략이나 정책에 해당 할 때 패턴은 유용한 구현 기술 그 이상이됩니다. [12 장]

에반스는 소프트웨어 모델을 비즈니스 도메인의 심층 모델과 맞추는 것이 달성하기가 어려운 목표이지만 엄청난 가치를 제공한다고 주장합니다. 그가 맞다면, 아마도 소프트웨어 디자인 패턴이 만들어야 할 "더 깊은 진술"은 소프트웨어 시스템 자체의 좁은 기술 범위를 넘어 폭 넓은 문제 상황에 패턴이 어떻게 적합할까요?

관련 문제