📌 Design Pattern 의 효용
자주 사용하는 설계 패턴을 정형화해서 이를 유형별로 가장 최적의 방법으로 개발을 할 수 있도록 정해둔 설계.
알고리즘과 유사하지만, 명확하게 정답이 있는 형태는 아니며, 프로젝트의 상황에 맞추어 적용 가능하다.
A식으로 로직을 구성하면 템플릿 메소드 패턴.
B식으로 로직을 구성하면 옵저버 메소드 패턴.
: 해결하려는 문제가 무엇이느냐에 따라서 그에 적당한 구조를 선택해 사용한다.
📍 Gof 디자인 패턴
디자인 패턴의 효용
"어떤 식으로 짓겠다" 공유하면 커뮤니케이션이 원활하게된다.
EX) template method pattern 템플릿을 사용함에 따라 미리 잘 만들어진 모범답안을 공부할 수 있으며, 템플릿을 이용할 때 어떤 도구를 어떤 방법으로 구현하는가에 대한 책임은 사용자에게 위임한다.
생성패턴
객체를 생성하는 것과 관련된 패턴으로,
객체의 생성과 변경이 전체 시스템에 미치는 영향을 최소화하고, 코드의 유연성을 높여준다.
- Factory Method
- Singleton
- Prototype
- Builder
- Abstract Factory
- Chaining
구조패턴
프로그램 내의 자료구조나 인터페이스 구조 등 프로그램 구조를 설계하는데 활용될 수 있는 패턴 클래스를 말한다. 객체들의 구성을 통해서 더 큰 구조를 만들 수 있게 해준다.
큰 규모의 시스템에서는 많은 클래스들이 서로 의존성을 가지게 되는데, 구조패턴을 이용하면 복잡한 구조를 유지보수하기 쉽도록 설계할 수 있다.
- Adapter
- Composite
- Bridge
- Decorator
- Facade
- Flyweight
- Proxy
행위패턴
반복적으로 사용되는 객체들의 상호작용을 패턴화한 것으로, 클래스나 객체들이 상호작용하는 방법과 책임을 분산하는 방법을 제공한다. 행위패턴은 행위 관련 패턴을 사용하여 독립적으로 일을 처리하고자 할때 사용한다.
- Templete Method
- Interpreter
- Iterator
- Observer
- Strategy
- Visitor
- Chain of responsibility
- Command
- Mediator
- State
- Memento
'이론 > 디자인패턴' 카테고리의 다른 글
[디자인 패턴] 옵저버 패턴 Observer Pattern (0) | 2021.06.06 |
---|---|
[디자인패턴] 데코레이터 패턴 Decorator Pattern (0) | 2021.06.06 |
[디자인 패턴] 프록시 패턴 Proxy Pattern (0) | 2021.06.04 |
[디자인패턴] 어뎁터 패턴 Adapter Pattern (0) | 2021.06.04 |
[디자인 패턴] 싱글톤 패턴 Singleton pattern (0) | 2021.06.04 |