进入计算机时代以来,程序设计方法和编程过程不断发展演进,在现阶段,面向对象编程方法占据程序设计的主流,成为最常用且最重要的程序设计方法。本书不是一本单纯地笼统介绍设计模式的书,它从概念定义入手,以现实生活范例,结合大量代码示例介绍了面向对象设计的GRASP(通用责任分配软件模式)原则及GoF的23种设计模式,教导读者如何将其灵活应用到自己的开发过程中。最后还提供了两个设计模式综合应用案例,为读者进一步领悟设计模式的精妙并实践模式提供了很好的平台。在附录部分提供了一组自测习题及答案,以巩固和加深读者对模式的理解。
本书是一本通俗易懂的设计模式入门指导图书。
作者用C#和Java两种语言,借助现实生活范例和图片演示,全面阐释 GRASP及GoF 23种设计模式的概念及其编程应用,帮助你领悟设计模式的思想及精华,并将其融会贯通、灵活应用到自己的开发过程中。
全书用两章篇幅对设计模式和GRASP作了基本介绍,用三章的篇幅全面展开对23种设计模式的讲解:对于每一种模式,先给出定义,接着通过类比方式用一个现实世界中的例子说明模式的应用,然后分别以C#和Java代码例述模式的架构实现。最后一章给出了两个设计模式综合案例,为读者实践设计模式提供了很好的学习环境。附录部分精心安排了自测题及答案,供读者练习并检验学习效果。
本书适合程序开发人员阅读,尤其适合作为大学计算机专业高年级学生和研究生的教学参考书。
第1章 基本概念
1.1什么是设计模式
1.2设计模式的作用
1.3 GRASP模式的分类
1.4 GoF设计模式的分类
1.5模式的学习阶段
第2章 负责任地设计对象——GRASP
2.1 Information Expert(信息专家)
2.2 Creator(创造者)
2.3 Low Coupling(低耦合)
2.4 High Cohesion(高内聚)
2.5 Controller(控制器)
2.6 Polymorphism(多态)
2.7 Pure Fabrication(纯虚构)
2.8 Indirection(间接)
2.9 Protected Variations(受保护变化)
第3章 GOF-Creational Design Patterns创建型设计模式
3.1 Simple Factory Pattern(简单工厂模式)
3.1.1 定义
3.1.2 现实例子——国旗生产厂
3.1.3 C#实例1——电子付款系统
3.1.4 C#实例2——学校登录系统
3.1.5 Java实例——手机简单工厂
3.1.6 优势和缺陷
3.1.7 应用情景
3.2 Factory Method Pattern(工厂方法模式).
3.2.1 定义
3.2.2 现实例子——兵工厂
3.2.3 C#实例——多文档系统
3.2.4 Java实例——扩展了的手机工厂
3.2.5 优势和缺陷
3.2.6 应用情景
3.3 Abstract Factory Pattem(抽象工厂模式)
3.3.1 定义
3.3.2 现实例子——扩展了的兵工厂
3.3.3 C#实例——大陆生态系统
3.3.4 Java实例——电脑产品
3.3.5 优势和缺陷
3.3.6 应用情景
3.4 Builder Pattem(建造者模式)
3.4.1 定义
3.4.2 现实例子——快餐店
3.4.3 C#实例——车间造车
3.4.4 Java实例——建造房屋
3.4.5 优势和缺陷
3.4.6 应用情景
3.5 Prototype Pattern(原型模式)
3.5.1 定义
……
第3章 GoF-Creational Design Patterns创建型设计模式
第4章 GoF-Creational Design Patterns结构型设计模式
第5章 GoF-Creational Design Patterns行为型设计模式
第6章 模式的综合应用
附录1 自测题
附录2 自测题答案
参考文献