책을 읽어보니 책이 참 괜찮은거 같다.
실제 해당 패턴의 목적, 역할
에 대한 내용설명이 괜찮은거 같았다.
실제 패턴 하나하나마다
상황을 하나 내놓고
그 상황에 대한 문제점 과
그에 따른 해결책 을
패턴으로 설명하고 있어서 좋았다.
머 C++ 로 설명되어있지만
문법적으로 복잡한 내용의 예제들이 아니어서
이해하는데도 괜찮았던거 같다.
실제로 컴파일하고 실행할 수 있는 디자인 패턴의 완전한 구현
패턴별 6단계 적용 방법으로 현장에서 발생하는 문제를 해결한다!
실제적인 문제 사례를 구체적으로 제시한 다음, 이 문제를 해결하기 위해 생각할 수 있는 방법은 무엇인지 또 그렇게 생각한 방법이 어떤 문제가 있으며 그 문제를 해결하기 위해서는 어떻게 해야 하는지 등을 따져봄으로써 해당 디자인 패턴이 가장 적절한 설계임을 제시한다. 또한 C++ 언어를 기반으로, 주어진 문제를 디자인 패턴을 활용해서 해결한 완전한 소스코드도 제공한다.
이 책에서는 각 패턴에 대해 다음과 같은 단계로 설명한다.
PART 1. 소프트웨어 개발과 디자인 패턴 Chapter 1. 소프트웨어 개발과 WHAT-WHY-HOW 생각 모델 소프트웨어 개발 기준 개념 또는 철학 소프트웨어 개발 과정 최적의 해결책 What-Why-How 생각 모델 Chapter 2. 소프트웨어 설계 및 디자인 패턴 소프트웨어 설계 좋은 소프트웨어 설계의 특성 좋은 소프트웨어를 설계하기 위한 도구 디자인 패턴의 정의 및 유용성 디자인 패턴 이해와 활용을 위한 이 책의 접근 방법 PART 2. 객체 생성을 위한 디자인 패턴 Chapter 3. 제품군별 객체 생성 문제 : Abstract Factory 패턴 문제 사례 설명 다양한 접근 방법 및 Abstract Factory 패턴 기본적인 방법: 조건 비교 방식 좀더 나은 방법: 객체 생성 전담 클래스 활용 방식 패턴 활용 방법: Abstract Factory 패턴 샘플 코드 구현 관련 사항 Singleton 패턴을 활용한 구현 Prototype 패턴을 활용한 구현 새로운 제품 종류의 추가시 문제 해결 방법 Abstract Factory 패턴 정리 Chapter 4. 부분 부분 생성을 통한 전체 객체 생성 문제 : Builder 패턴 문제 사례 설명 다양한 접근 방법 및 Builder 패턴 기본적인 방법: 함수 형태 접근 방식 좀더 나은 방법: 번역 전담 클래스 활용 방식 패턴 활용 방법: Builder 패턴 샘플 코드 구현 관련 사항 Builder 패턴 정리 Chapter 5. 대행 함수를 통한 객체 생성 문제 : Factory Method 패턴 문제 사례 설명 다양한 접근 방법 및 Factory Method 패턴 기본적인 방법: 클래스별 멤버 함수 구현 방식 패턴 활용 방법: Factory Method 패턴 샘플 코드 구현 관련 사항 Factory Method 패턴 정리 Chapter 6. 복제를 통한 객체 생성 문제 : Prototype 패턴 문제 사례 설명 다양한 접근 방법 및 Prototype 패턴 기본적인 방법: 직접적인 객체 생성 방식 좀더 나은 방법: 객체 생성 대행 함수 활용 방식 패턴 활용 방법: Prototype 패턴 샘플 코드 구현 관련 사항 Prototype 패턴 정리 Chapter 7. 최대 N개로 객체 생성을 제한하는 문제 : Singleton 패턴 문제 사례 설명 다양한 접근 방법 및 Singleton 패턴 기본적인 방법: 전역 변수에 의한 객체 생성, 관리 패턴 활용 방법: Singleton 패턴 샘플 코드 구현 관련 사항 Singleton 패턴 정리 Chapter 8. 객체 생성을 위한 디자인 패턴 정리 PART 3. 구조 개선을 위한 디자인 패턴 Chapter 9. 기존 모듈 재사용을 위한 인터페이스 변경 문제 : Adapter 패턴 문제 사례 설명 다양한 접근 방법 및 Adapter 패턴 기본적인 방법: Client에 의한 구분 사용 패턴 활용 방법: Adapter 패턴 샘플 코드 구현 관련 사항 Adapter 패턴 정리 Chapter 10. 인터페이스와 구현의 명확한 분리 문제 : Bridge 패턴 문제 사례 설명 다양한 접근 방법 및 Bridge 패턴 기본적인 방법: #ifdef ~ #else ~ #endif 적용 방식 좀더 나은 방법: 플랫폼별 하위 클래스 정의 패턴 활용 방법: Bridge 패턴 샘플 코드 구현 관련 사항 Bridge 패턴 정리 Chapter 11. 부분-전체 관계 구조 취급 문제 : Composite 패턴 문제 사례 설명 다양한 접근 방법 및 Composite 패턴 기본적인 방법: 서로 다른 자료형을 활용 방식 패턴 활용 방법: Composite 패턴 샘플 코드 구현 관련 사항 Composite 패턴 정리 Chapter 12. 특정 객체의 기능 동적 추가, 삭제 문제 : Decorator 패턴 문제 사례 설명 다양한 접근 방법 및 Decorator 패턴 기본적인 방법: 클래스 재정의를 통한 객체 기능 조정 방법 또 다른 방법: 클래스 상속을 통한 객체 기능 조정 방법 패턴 활용 방법: Decorator 패턴 샘플 코드 구현 관련 사항 Decorator 패턴 정리 Chapter 13. 명확한 서브시스템 정의 문제 : Facade 패턴 문제 사례 설명 다양한 접근 방법 및 Facade 패턴 기본적인 방법: 클래스들의 직접 활용 방법 좀더 나은 방법: Proxy 패턴 패턴 활용 방법: Facade 패턴 샘플 코드 구현 관련 사항 Facade 패턴 정리 Chapter 14. 객체의 공유 문제 : Flyweight 패턴 문제 사례 설명 다양한 접근 방법 및 Flyweight 패턴 기본적인 방법: 화면 관리 객체 정의 및 활용 방식 패턴 활용 방법: Flyweight 패턴 샘플 코드 구현 관련 사항 Flyweight 패턴 정리 Chapter 15. 대리 객체를 통한 작업 수행 문제 : Proxy 패턴 문제 사례 설명 다양한 접근 방법 및 Proxy 패턴 기본적인 방법: 단순 캐싱 방식 패턴 활용 방식: Proxy 패턴 샘플 코드 구현 관련 사항 Proxy 패턴 정리 Chapter 16. 구조 개선을 위한 디자인 패턴 정리 PART 4. 행위 수행 개선을 위한 디자인 패턴 Chapter 17. 수행 가능 객체까지 요청 전파 문제 : Chain of Responsibility 패턴 문제 사례 설명 다양한 접근 방법 및 Chain of Responsibility 패턴 기본적인 방법: 전담 객체 정의 방식 패턴 활용 방식: Chain of Responsibility 패턴 샘플 코드 구현 관련 사항 Chain of Responsibility 패턴 정리 Chapter 18. 수행할 작업의 일반화 문제 : Command 패턴 문제 사례 설명 다양한 접근 방법 및 Command 패턴 기본적인 방법: 요청 종류에 따른 분기 방식 패턴 활용 방식: Command 패턴 샘플 코드 구현 관련 사항 Command 패턴 정리 Chapter 19. 간단한 문법에 기반한 검증 및 작업 처리 문제 : Interpreter 패턴 문제 사례 설명 다양한 접근 방법 및 Interpreter 패턴 기본적인 방법: 각각 독립된 클래스를 통한 구현 방식 패턴 활용 방식: Interpreter 패턴 샘플 코드 구현 관련 사항 Interpreter 패턴 정리 Chapter 20. 동일 자료형의 여러 객체에 대한 순차적 접근 문제 : Iterator 패턴 문제 사례 설명 다양한 접근 방법 및 Iterator 패턴 기본적인 방법: 리스트 자체를 클래스로 정의하는 방법 패턴 활용 방식: Iterator 패턴 샘플 코드 구현 관련 사항 Iterator 패턴 정리 Chapter 21. 복잡한 M:N 객체 관계의 완화 문제 : Mediator 패턴 문제 사례 설명 다양한 접근 방법 및 Mediator 패턴 기본적인 방법: M:N 관계 적용 방식 패턴 활용 방식: Mediator 패턴 샘플 코드 구현 관련 사항 Mediator 패턴 정리 Chapter 22. 객체의 이전 상태 복원 문제 : Memento 패턴 문제 사례 설명 다양한 접근 방법 및 Memento 패턴 기본적인 방법: 계산을 통한 이전 상태 복원 방식 패턴 활용 방식: Memento 패턴 샘플 코드 구현 관련 사항 Memento 패턴 정리 Chapter 23. ONE SOURCE MULTIPLE USE 문제 : Observer 패턴 문제 사례 설명 다양한 접근 방법 및 Observer 패턴 기본적인 방법: 원본 데이터에 대한 직접적인 참조 방식 패턴 활용 방식: Observer 패턴 샘플 코드 구현 관련 사항 Observer 패턴 정리 Chapter 24. 객체 상태 추가에 따른 행위 수행 변경 문제 : State 패턴 문제 사례 설명 다양한 접근 방법 및 State 패턴 기본적인 방법: 상태 비교에 따른 행위 변경 방식 패턴 활용 방식: State 패턴 샘플 코드 구현 관련 사항 State 패턴 정리 Chapter 25. 동일 목적 알고리즘의 동적 적용 문제 : Strategy 패턴 문제 사례 설명 다양한 접근 방법 및 Strategy 패턴 기본적인 방법: 분기문에 의한 알고리즘 선택 적용 방식 패턴 활용 방식: Strategy 패턴 샘플 코드 구현 관련 사항 Strategy 패턴 정리 Chapter 26. 알고리즘 기본 골격 재사용과 상세 구현 변경 문제 : Template Method 패턴 문제 사례 설명 다양한 접근 방법 및 Template Method 패턴 기본적인 방법: 서로 독립된 클래스 활용 방식 패턴 활용 방식: Template Method 패턴 샘플 코드 구현 관련 사항 Template Method 패턴 정리 Chapter 27. 작업 종류를 효율적으로 추가, 변경 문제 : Visitor 패턴 문제 사례 설명 다양한 접근 방법 및 Visitor 패턴 기본적인 방법: 작업 대상 클래스의 변경, 확장 방식 패턴 활용 방식: Visitor 패턴 샘플 코드 구현 관련 사항 Visitor 패턴 정리 Chapter 28. 행위 수행 개선을 위한 디자인 패턴 정리 PART 5. 디자인 패턴 활용 Chapter 29. 디자인 패턴 요약 정리 Chapter 30. 디자인 패턴 활용
자료명 | 등록일 | 다운로드 |
---|---|---|
예제소스 | 2016-04-06 | 다운로드 |