좌충우돌 개발

디자인 패턴 요약

|

1. Strategy pattern

알고리즘을 정의하고 각각을 캡슐화하여 교환해서 사용 할 수 있도록 만든다. #### 2. Observer pattern
한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들 한테 연락이 가고
자동으로 내용이 갱신되는 방식으로 일대다( one-to-many) 의존성을 정의 #### 3. Decorator pattern
객체에 추가적인 요건을 동적으로 첨가한다.
decorator는 subclass를 만드는 것을 통해서 기능을 유연하게 확장 할 수 있는 방법을 제공한다. #### 4. Factory pattern
- Factory method pattern
	객체를 생성하기 위한 interface를 정의 하는데, 어떤 class의 instance를 만들지를 subclass에서 결정하게 만든다
- Abstract Factory pattern
	    interface를 이용하여 서로 연관된, 또는 의존하는 객체를 Abstract class로 지정하지 않고도 생성할 수 있다. #### 5. Singleton pattern
해당 class의 instance가 하나만 만들어지고, 어디서든지 그 인스턴스에 접근할 수 있도록 하기위한 패턴 #### 6. Command pattern
요구사항을 캡슐화 할 수 있으며, 매개 변수를 써서 여러가지 다른 요구사항을 집어 넣을 수도 있다.
또한 요청 내역을 큐에 저장하거나 로그로 기록할 수도 있으며, 작업 취소 기능도 지원가능하다. #### 7. Adapter pattern
한 클래스의 interface를 client에서 사용하고자 하는 다른 interface로 변환한다.
adapter를 이용하면 interface 호환성 문제 때문에 같이 쓸수 없는 클래스들을 연결해서 쓸 수 있다.
facade pattern 어떤 서브시스템의 일련의 interface에 대한 통합된 interface를 제공한다.
facade에서 고수준 interface를 정의하기 때문에 서브시스템을 더 쉽게 사용할 수 있다. #### 8. Templete method pattern
method에서 알고리즘의 골격을 정의한다. 알고리즘의 여러 단계 중 일부는 서브클래스에서 구현할 수 있다.
templete method를 이용하면 알고리즘의 구조는 그대로 유지하면서 서브클래스에서 특정 단계를 재정의 할수 있다.

Comments