-
[Design Pattern] 디자인 패턴의 타입공부/디자인 패턴 2020. 2. 22. 22:35
디자인 패턴은 왜 필요할까?
중복되는 코드 개발을 하고 싶지 않아서, 업무의 분리를 위해 가 가장 큰 이유가 됩니다. 실 생활에서 이미 바퀴가 발명되어 있는데 이를 재 발명 할 이유는 없습니다. 이전 문제의 해결책과 유사하게 느껴지는 문제에 대해서 해결책을 설계하고자 할 때, 데자뷰와 같은 느낌을 경험했으면 디자인 패턴을 공부하지 않았지만 무의식 적으로 이러한 패턴을 사용했을 것입니다.
디자인 패턴의 종류
객체 지향 언어의 디자인 패턴은 세 가지로 나눌 수 있습니다.
- Creational
- Structural
- Behavioural
Creational
Creational 디자인 패턴은 클래스에서 객체를 구성하는 방법과 관련이 있습니다. 객체를 새로 생성할 때, 인스턴스를 아무렇게 생성하면 코드를 파악하기 어렵게 만들 수 있습니다. Creational 디자인 패턴은 객체 생성에 대해 캡슐화하는 방법을 서술합니다.
- Builder Pattern
- Prototype Pattern
- Singleton Pattern
- Abstract Factory Pattern
Structural
Structural 디자인 패턴은 클래스 구성에 관련이 있습니다.
- Adapter Pattern
- Bridge Pattern
- Composite Pattern
- Decorator Pattern
- Facade Pattern
- Flyweight Pattern
- Proxy Pattern
Behavioural
Behavioural 디자인 패턴은 클래스와 객체 간의 상호 작용에 관한 내용을 포함합니다.
- Interpreter Pattern
- Template Pattern
- Chain of Responsibility Pattern
- Command Pattern
- Iterator Pattern
- Mediator Pattern
- Memento Pattern
- Observer Pattern
- State Pattern
- Strategy Pattern
- Visitor Pattern