Design Pattern

[DesignPattern] 디자인 패턴 종류

다닿 2023. 10. 13. 17:47

Gang of Four(GoF) 디자인 패턴은 총 23가지

 

  1. 생성 패턴 (Creational Patterns): 객체 생성에 관련된 패턴으로, 객체를 생성하고 초기화하는 방법을 다룹니다.
    • 팩토리 메서드 (Factory Method)
    • 추상 팩토리 (Abstract Factory)
    • 빌더 (Builder)
    • 프로토타입 (Prototype)
    • 싱글턴 (Singleton)
  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)

그 외에도

 

참조 패턴 (Concurrency Patterns): 동시성과 관련된 문제를 해결하는 패턴으로, 멀티스레드 환경에서 안전하게 객체를 공유하고 조정하는 방법을 다룹니다.

  • 데드락 (Deadlock)
  • 동기화 (Locking)
  • 스레드 풀 (Thread Pool)
  • 바켓 (Balking)
  • 세마포어 (Semaphore)
  • 퓨처 (Future)
  • 가디언 (Guarded Suspension)
  • 복합명령 (Double Checked Locking)