반응형
디자인 패턴이란 프로그래밍에서 공통적으로 나타나는 코드 구조를 정리한것을 말한다.
대표적으로 GOF 디자인 패턴 등이 있다.
GOF 디자인 패턴이란?
GOF 는 "Gang of Four" 의 약자로 설명하자면 "사대천왕" 정도의 뜻인데,
이건 1995년에 Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides 이 천재 개발자들이 제시한 23가지의 패턴 이다.
GOF 디자인 패턴의 종류
GOF 디자인 패턴에는 크게 생성, 구조, 행동의 3가지 카테고리로 나눌 수 있다.
1. 생성 패턴(Creational Patterns): 객체 생성에 관련된 패턴으로, 객체의 생성 과정의 유연성과 재사용성을 증가시킵니다.
- 싱글톤(Singleton)
- 프로토타입(Prototype)
- 팩토리 메서드(Factory Method)
- 빌더(Builder)
- 추상 팩토리(Abstract Factory)
2. 구조 패턴(Structural Patterns): 클래스나 객체를 조합해 더 큰 구조를 만드는 패턴으로, 클래스의 구조를 결정하며 결과 클래스는 구성 요소 클래스의 인터페이스를 새로 정의합니다
- 어댑터(Adapter)
- 브리지(Bridge)
- 컴포짓(Composite)
- 데코레이터(Decorator)
- 퍼사드(Facade)
- 플라이웨이트(Flyweight)
- 프록시(Proxy)
3. 행동 패턴(Behavioral Patterns): 클래스의 객체들이 상호작용하는 방법과 책임을 분산하는 방법을 정의하는 패턴으로, 객체들 사이의 유기적인 행동 패턴을 통해 더 큰 협력 행위를 만들어냅니다.
- 책임 연쇄(Chain of Responsibility)
- 커맨드(Command)
- 인터프리터(Interpreter)
- 이터레이터(Iterator)
- 중재자(Mediator)
- 메멘토(Memento)
- 옵저버(Observer)
- 상태(State)
- 전략(Strategy)
- 템플릿 메소드(Template Method)
- 방문자(Visitor)
각 패턴들은 그자체로 강력한 도구이고, 적절하게 사용 한다면 개발시에 효율과 유지보수 모두를 챙길수 있을거라 생각 합니다.
글이 길어져 다음 포스트에서는 각 패턴에 대해 좀 더 자세히 알아보도록 하겠습니다
728x90
'디자인패턴' 카테고리의 다른 글
[ 디자인패턴 ] 추상 팩토리 패턴 (Abstract Factory) (1) | 2023.08.11 |
---|---|
[ 디자인 패턴 ] 팩토리 메서드 패턴 (Factory Method) (1) | 2023.08.06 |
[ 디자인 패턴 ] 싱글톤 패턴 (Singleton Pattern ) (0) | 2023.08.04 |