편집하면 당신의 IP 주소가 공개적으로 기록됩니다.
계정을 만들고 로그인하면 편집 시 사용자 이름만 보이며, 위키 이용에 여러 가지 편의가 주어집니다.
편집을 취소할 수 있습니다.
이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 |
당신의 편집 |
2번째 줄: |
2번째 줄: |
|
| |
|
| == 종류 == | | == 종류 == |
| 패턴의 분류와 명칭은 <GOF 디자인 패턴>을 따른다. 또한, 패턴은 보통 [[UML]]으로 표현하기 때문에 UML을 알고 있다는 전제하에 설명한다. | | 패턴의 분류와 명칭은 <GOF 디자인 패턴>을 따른다. |
|
| |
|
| === 생성 패턴 === | | === 생성 패턴 === |
|
| |
|
| * Abstract Factory | | * Abstract Factory |
|
| |
| [[파일:Design Pattern Factory.png]]
| |
|
| |
| : 이 패턴과 Factory Method 패턴의 기본이 되는 Factory 패턴은 객체를 생성하는 과정을 숨기고 인스턴스만 반환한다.
| |
|
| |
| [[파일:Design Pattern Abstract Factory.png]]
| |
|
| |
| : Abstract Factory는 Factory를 추상화하여 객체의 생성과정을 클라이언트가 선택할 수 있게 한 것으로, Factory 패턴이 후술할 Strategy 패턴과 결합한 것이라고 볼 수 있다.
| |
| * Builder | | * Builder |
| * Factory Method | | * Factory Method |
|
| |
| [[파일:Design Pattern Factory Method.png]]
| |
|
| |
| : 객체의 생성을 하나의 메소드에 전가하는 패턴으로, 생성과 사용을 분리한다. 팩토리 클래스를 상속한 클래스로 생성작업을 구현한다.
| |
| * Prototype | | * Prototype |
| * Singleton | | * Singleton |
| [[파일:Design Pattern Singleton.png]]
| | : 가장 간단한 패턴이다. 프로그램 사이클동안 하나의 인스턴트 생성민 허락할 때 사용한다. |
| : 가장 간단한 패턴이다. 프로그램 사이클동안 하나의 인스턴트 생성민 허락할 때 사용한다. 보통 정적 Singleton, 게으른 인스턴스화가 적용된 Singleton, 동기화가 적용된 Singleton 정도를 구현하게 되지만, C++의 경우 객체의 소멸 부분의 문제 때문에 위의 것과 더불어 죽었다 살아나는<del>[[주작]]</del> 피닉스 Singleton 등 다양한 구현이 존재한다. | |
|
| |
|
| === 구조패턴 === | | === 구조패턴 === |
47번째 줄: |
34번째 줄: |
| * Template Method | | * Template Method |
| * Visitor | | * Visitor |
| | |
| | [[작성중]] |
|
| |
|
| {{주석}} | | {{주석}} |
|
| |
|
| [[분류:디자인 패턴]] | | [[분류:컴퓨터 프로그래밍/디자인 패턴]] |