패턴의 분류
디자인 패턴은 복잡성, 상세도 및 설계 중인 전체 시스템에 대한 적용 범위에 따라 분류됩니다. 저는 도로 건설에 비유하는 걸 좋아합니다. 교차로를 더 안전하게 만들기 위해 신호등을 설치하거나 보행자를 위한 지하도가 있는 전체 다층 인터체인지를 구축하는 작업에 비유할 수 있습니다.
가장 기본적인 하위 설계 패턴을 이디엄이라고 합니다. 일반적으로 이디엄은 단일 프로그래밍 언어에만 적용할 수 있습니다.
아키텍처 패턴은 상위 설계 패턴이며 가장 보편적으로 사용됩니다. 개발자들은 거의 모든 언어로 아키텍처 패턴들을 구현할 수 있으며 다른 패턴들과 달리 애플리케이션 전체의 구조(아키텍처)를 설계하는 데 사용할 수 있습니다.
또한 모든 패턴은 패턴의 의도 또는 목적에 따라 분류할 수 있습니다. 이 책에서는 패턴의 주요 세 가지 그룹에 대해 다룹니다.
-
생성 패턴들은 기존 코드의 재활용과 유연성을 증가시키는 객체 생성 메커니즘들을 제공합니다.
-
구조 패턴은 구조를 유연하고 효율적으로 유지하면서 객체와 클래스를 더 큰 구조로 조합하는 방법을 설명합니다.
-
행동 패턴은 객체 간의 효과적인 의사소통과 책임 할당을 처리합니다.