01.디자인패턴이란?
02.디자인패턴의 장점과 단점
- 설계자로 하여금 재사용이 가능한 설계를 선택하고, 재사용을 방해하는 설계는 배제하도록 도와줌
- 또한 패턴을 쓰면 이미 만든 시스템의 유지보수나 문서화도 개선할 수 있고,
- 클래스의 명세도 정확하게 할 수 있고,
- 객체 간의 상호작용 또는 설계 의도까지 명확하게 정의 할 수 있음
- 간단히 말해서 디자인 패턴은 설계자들이 올바른 설계를 빨리 만들 수 있도록 도와줌
- 기존 환경 내에서 반복적으로 일어나는 문제를 어떻게 풀어나갈 것인가에 대한 일종의 솔루션 같은 것
생성 패턴 | 구조 패턴 | 행동 패턴 |
---|---|---|
객체의 생성에 관련된 패턴, 객체의 생성 로직을 숨김으로써 유연성을 향상 시킴 | 클래스와 객체의 구성에 관련된 패턴 | 객체와 객체간의 통신에 관련된 패턴. |
Singleton | Adapter | Command |
Abstract Factory | Composite | Interpreter |
Factory Method | Decorator | Iterator |
Builder | Facede | Mediator |
Prototype | Flyweight | Memento |
Proxy | Observer | |
State | ||
Strategy | ||
Template Method |
- 장점
- 개발자 간의 원할한 의사소통
- 소프트웨어 구조 파악 용이
- 재사용을 통한 개발 시간 단축
- 설계 변경 요청에 대한 유연한 대처
- 불필요한 리소스 낭비 방지
- 단점
- 객체지향 설계/ 구현 위주로 사용됨
- 초기 투자 비용 부담