1. 개요
디자인 패턴에 대해 알아보고 코딩시 어떻게 활용할 수 있는지 정리한다.
2. 디자인 패턴
디자인 패턴은 개발자들이 비슷한 문제들을 반복적으로 구현을 하면서 이를 간단히 정리해 놓은 코드 패턴이다.
GoF(Gang of Four) Design Patterns 책에서는 디자인 패턴을 3가지로 분류한다.
- 생성 패턴 (Creational Patterns)
- 구조 패턴 (Structural Patterns)
- 행동 패턴 (Behavioral Patterns)
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)
- 반복자 (Iterator)
- 중재자 (Mediator)
- 옵저버 (bserver)
- 상태 (State)
- 전략 (Strategy)
- 템플릿 메서드 (Template Method)
- 비지터 (Visitor)
3. 디자인 패턴 공부
디자인 패턴을 효율적으로 살펴보기 위해 내가 알아야 할 점들은 무엇이 있는지 정리해보자.
- 해당 디자인 패턴은 어느 상황에 사용되는가?
- 디자인 패턴이 사용되는 상황을 정리해본다.
- 그리고 그 상황을 마주쳤을 때 해당 디자인 패턴을 생각할 수 있도록 훈련한다.
- 디자인 패턴을 떠올렸다면 고려한다.
- 해당 상황에서 정말 적용해도 되는지 디자인 패턴의 장점과 단점을 생각하며 고려한다.
- 디자인 패턴을 적용한다.
- 기본 클래스 다이어그램 틀과 사용된 소스코드를 참고하여 전체적인 흐름을 파악하고 적용한다.
4. 정리
- 디자인 패턴은 어떤 상황을 해결하기 위해 개발자들이 구현해 놓은 검증된 코드 패턴이다.
- 디자인 패턴은 생성 패턴, 구조 패턴, 행동 패턴 3가지로 나뉜다.
- 디자인 패턴을 내 코드에 녹여내려면 아래의 내용을 정리한다.
- 디자인 패턴이 사용되는 상황 (떠올리기)
- 디자인 패턴의 장점과 단점 (고려하기)
- 디자인 패턴의 클래스 다이어그램과 소스코드 정리 (참고하기)
'Design Pattern' 카테고리의 다른 글
| [Design Pattern] 전략 패턴 (0) | 2025.04.02 |
|---|---|
| [Design Pattern] 디자인 패턴 (0) | 2025.04.01 |
| [DesignPattern] 모던 객체지향 설계 - 활용 예시 (0) | 2025.04.01 |
| [DesignPattern] 모던 객체지향 설계 - 추가 원칙 (0) | 2025.03.31 |
| [DesignPattern] 모던 객체지향 설계 - 객체지향의 기본 원칙 (0) | 2025.03.31 |