Gang of Four(GoF) 디자인 패턴은 총 23가지
- 생성 패턴 (Creational Patterns): 객체 생성에 관련된 패턴으로, 객체를 생성하고 초기화하는 방법을 다룹니다.
- 팩토리 메서드 (Factory Method)
- 추상 팩토리 (Abstract Factory)
- 빌더 (Builder)
- 프로토타입 (Prototype)
- 싱글턴 (Singleton)
- 구조 패턴 (Structural Patterns): 클래스나 객체의 구조를 설계하는 데 사용되는 패턴으로, 클래스와 객체들이 서로 더 유연하게 작동할 수 있도록 도와줍니다.
- 어댑터 (Adapter)
- 브리지 (Bridge)
- 컴포지트 (Composite)
- 데코레이터 (Decorator)
- 퍼사드 (Facade)
- 플라이웨이트 (Flyweight)
- 프록시 (Proxy)
- 행위 패턴 (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)
등
'Design Pattern' 카테고리의 다른 글
[DesignPattern] Pub-Sub in TypeScript (0) | 2024.03.16 |
---|---|
[DesignPattern] Singleton in TypeScript (0) | 2024.03.16 |
[DesignPattern] State Pattern in TypeScript (0) | 2024.03.16 |