본문 바로가기
클린아키텍처

디자인 패턴의 종류

by bzerome240 2023. 3. 19.

 

종류

데코레이션 패턴 : 객체를 감싸서 새로운 행동을 제공한다.

상태 패턴 : 상태를 기반으로 하는 행동을 캡슐화한 다음 위임으로 필요한 행동을 선택한다.

반복자 패턴 : 컬렉션이 어떤 식으로 구현되었는지 드러내지 않으면서도 컬렉션 내에 있는 모든 객체를 대상으로 반복 작업을 처리할 수 있게 한다.

퍼사드 패턴 : 일련의 클래스에 간단한 인터페이스를 제공한다.

전략 패턴 : 교환 가능한 행동을 캡슐화하고 위임으로 어떤 행동을 사용할지 결정한다.

프록시 패턴 : 상태가 변경되면 다른 객체들에게 연락을 돌릴 수 있게 해준다.

팩토리 메소드 패턴 : 서브클래스에서 생성할 구상 클래스를 결정한다.

어댑터 패턴 : 객체를 감싸서 다른 인터페이스를 제공한다.

옵저버 패턴 : 객체를 감싸서 그 객체로의 접근을 제어한다.

템플릿 메소드 패턴 : 알고리즘의 개별 단계를 구현하는 방법을 서브클래스에서 결정한다.

컴포지트 패턴 : 클라이언트에서 객체 컬렉션과 개별 객체를 똑같이 다룰 수 있도록 해준다.

싱글턴 패턴 : 딷 한 객체만 생성되도록 한다.

추상 팩토리 패턴 : 클라이언트에서 구상 클래스를 지정하지 않으면서도 객체군을 생성할 수 있도록 해준다.

커맨드 패턴 : 요청을 객체로 감싼다.

 


 

생성 패턴

: 객체 인스턴스를 생성하는 패턴

팩토리메서드, 추상 팩토리, 빌더, 프로토타입, 싱글톤

 

구조 패턴

: 클래스와 객체를 더 큰 구조로 만들 수 있게 구성을 사용하는 패턴

어댑터, 브리지, 데코레이터, 퍼사드, 플라이웨이트, 프록시, 컴포지트

 

행동 패턴 

: 클래스와 객체들이 상호작용하는 방법과 역할을 분담하는 방법을 다루는 패턴

템플릿 메서드, 싱글톤, 반복자, 옵저버, 상태, 전략, 인터프리터, 역할 변경, 비지터, 중재자, 메멘토

 


 

클래스 패턴

: 클래스 사이의 관계가 상속으로 어떻게 정의되는지를 다룬다.

템플릿 메소드, 팩토리 메소드, 어댑터, 인터프리터

 

객체 패턴

: 객체 사이의 관계를 다룬다.

컴포지트, 데코레이터, 커맨드, 퍼사드, 프록시, 전략, 옵저버, 상태, 추상 팩토리, 싱글톤, 비지터, 메멘토, 빌더 등.

 


 

참고

 

헤드퍼스트 디자인 패턴 - 한빛미디어

 

728x90
반응형

댓글