반응형
디자인 패턴 종류
GoF(Gang of Four) 디자인 패턴 구분
생성(Creational) 패턴
- 객체 생성 혹은 조합에 관한 패턴
- 추상 팩토리(Abstract Factory)
- 빌더(Builder)
- 팩토리 메서드(Factory Method)
- 프로토타입(Prototype)
- 싱글톤(Singleton)
구조(Structural) 패턴
- 객체를 조합해 더 큰 구조를 만드는 패턴
- 어댑터(Adapter)
- 브릿지(Bridge)
- 컴포지트(Composite)
- 데코레이터(Decorator)
- 퍼사드(Facade)
- 플라이웨이트(Flyweight)
- 프록시(Proxy)
행동(Behavioral) 패턴
- 객체 사이의 책임분배나 커뮤니케이션에 관한 패턴
- 책임 연쇄(Chain of Responsibility)
- 커맨트(Command)
- 인터프리터(Interpreter)
- 이터레이터(Iterator)
- 미디테이터(Mediator)
- 메멘토(Memento)
- 옵저버(Observer)
- 스테이트(State)
- 전략(Strategy)
- 템플릿 메서드(Template Method)
- 비지터(Visitor)
디자인 패턴 정리
- 싱글톤(Singleton) - 인스턴스가 한개임은 어플리케이션에서 보장해야하며, 이것에 대한 접근 제어를 할 수 있어야함
- 빌더(Builder) - 복잡한 객체의 생성과 표현 방법을 분리
- 팩토리 메서드(Factory Method) - 객체의 생성 자체를 캡슐화
- 어댑터(Adaptor) - 서로 다른 인터페이스를 같이 사용하는 방법
- 퍼사드(Facade) - 복잡한 인터페이스를 서브-클래스로 숨기고, 단순한 인터페이스로 보여줌
- 데코레이터(Decorator) - 어떤 객체의 수정없이 책임을 추가할 때 사용
- 프록시(Proxy) - 객체에 대한 접근 제어를 수행
- 전략(Strategy) - 클라이언트의 변경없이 독립적으로 전략을 변경하는 패턴
- 템플릿 메서드(Template Method) - 문제 해결의 큰 흐름을 유지하고 단계별 처리는 하위 클래스로 넘기거나 훅(hook)을 제공
- 책임 연쇄(Chain of Responsibility) - 보내는 메시지는 하나지만, 각 체인에 걸쳐서 메시지가 체인에 할당되어진 클래스들에 전파되어서 여러가지 메시지가 한번에 전달되도록하는 기능 제공
반응형
'cs > java-spring-boot' 카테고리의 다른 글
[Zero-base] 9-3. 레거시 코드 (0) | 2022.03.16 |
---|---|
[Zero-base] 9-2. 좋은 코드, 나쁜 코드, 이상한 코드 (0) | 2022.03.16 |
[Zero-base] 11-11. 책임연쇄(Chain of responsibility) (0) | 2022.03.15 |
[Zero-base] 11-10. 템플릿 메서드(Template Method) (0) | 2022.03.15 |
[Zero-base] 11-9. 스트러티지(Strategy) (0) | 2022.03.15 |