본문 바로가기
정보처리기사 필기

GoF 디자인 패턴 암기법

by 귀엽소 2025. 2. 1.
반응형

Gngs of Four 디자인 패턴 암기법

디자인 패턴이란 소프트웨어 설계에서 자주 발생하는 문제에 대한 일반적이고 반복적인 해결방법을 말한다.                                                                                                                      

(객체) 생성 패턴: 추빌팩프싱

구조 패턴: 어브컴데퍼플프(ABCDFFP)

행위 패턴: CISMOTV

 

객체생성 패턴

추상팩토리: 구체적인 클래스에 의존하지 않음. 인터페이스를 통해 서로 연관, 의존하는 객체들의 그룹으로 생성하여 추상적으로 표현함. 

빌더: 인스턴스를 조합하여 객체를 생성한다.

팩토리 메소드: 상위클래스에서는 인터페이스만 정의하고 객체 생성은 서브클래스가 처리한다. 가상생성자 패턴이라고도 함.

프로토타입: 원본 객체를 복제하는 방법으로 객체를 생성한다.

싱글톤: 하나의 객체를 생성하면 생성된 객체를 어디서든 참조할 수 있지만 여러프로세스가 동시에 참조할 수는 없다.

 

 

구조 패턴

어댑터: 인터페이스가 일치하지 않는 클래스들을 다른 클래스가 이용할 수 있도록 변환해준다.

브리지: 구현부에서 추상층을 분리하여 서로 독립적으로 확장할 수 있도록 구성한다.

컴포지트: 여러 객체를 가진 복합 객체와 단일 객체를 구분없이 다루고자 할 때 사용한다.

데코레이터: 객체 간의 결합을 통해 기능을 확장할 수 있다.

퍼싸드: 상위에 인터페이스를 구성하여 복잡한 서브 클래스들의 기능을 편리하게 사용할 수 있다.

플라이웨이트: 인스턴스가 필요한 경우 공유해서 사용하여 메모리를 절약한다.

프록시: 접근이 어려운 객체와 여기에 연결하려는 객체 사이에서 인터페이스 역할을 수행한다.

 

 

행위 패턴

C

책임 연쇄: 한 객체가 처리하지 못하는 요청을 다음 객체가 처리하는 형태로 요청이 해결 될 때
까지 고리를 따라 책임이 넘어간다.

커맨드: 요청을 객체의 형태로 캡슐화하여 재이용하거나 취소할 수 있도록 한다.

인터프리터: 언어에 문법 표현을 정리한다.

반복자: 접근이 잦은 객체에 대해 동일한 인터페이스를 사용하도록 한다.

S

상태: 객체의 상태에 따라 동일한 동작을 다르게 처리해야 할 때 사용한다.

전략: 동일한 계열의 알고리즘을 개별적으로 캡슐화하여 상호 교환할 수 있도록 한다.

M

중재자: 수많은 객체들 간의 복잡한 상호작용을 캡슐화하여 객체로 정의한다.

메멘토: 특정 시점에서의 객체 내부 상태를 객체화 하여 이후 요청에 따라 객체를 해당 시점의 상태로 되돌릴 수 있다.

O

옵서버: 한 객체의 상태가 변화하면 객체에 상속되어 있는 다른 객체들에게 변화된 상태를 전달한다.

T

템플릿 메소드: 골격 정의는 상위 클래스에서 하고 세부처리 구체화는 하위 클래스에서 한다.

V

방문자: 각 클래스들의 데이터 구조에서 처리 기능을 분리하여 별도의 클래스로 구성한다.

반응형

댓글