本书是设计模式的实用性入门和进阶书籍,内容安排上注重实用,可以使初学者迅速学以致用。本书非常适合熟悉Java编程但是对设计模式经验相对较少的读者阅读。
本书第1章~第3章介绍了面向对象的设计方法以及设计模式的起源和优点,讲解了UML的发展历史以及常见的关系图。第4章~第8章详细讲解了创建型模式的各个模式,包括了超市中各种需要创建的对象,解决了商品上架、捆绑销售、连锁店加盟、总店地位等问题。第9章~第15章详细讲解了结构型模式的各个模式,解决的问题主要有:电源插座问题、游戏机配件问题、手机展示问题、宣传海报设计问题等。在案例中还穿插使用了创建型模式以加深读者对两大类型的模式的理解。第16章~第26章详细讲解了行为型模式的各个模式,解决的主要问题有:连锁店客服专线问题、超市促销宣传资料的问题、商品进货审批中的问题、设计灵活高效的收银程序问题、超市在不同时段的运营状态问题、商品打折问题、设计不同糕点的制作流程问题等。在示例中综合运用了创建型模式、结构型模式、行为型模式,可以使读者对不同模式之间的合作加深印象。第27章对所有模式进行了总结并提出了对未来模式的学习方向。
本书使用Java语言来描述经典的GoF23设计模式,在讲解过程中涉及了JDK 6.0中的新特性,全书采用案例驱动的形式,由一个完整的超市系统案例统领了全部知识点。本书以案例项目工程为主线,以应用为目的,循序渐进地讲解了设计模式的具体应用方法,易学易用,并且结合案例驱动形式,可以使读者将各种设计模式真正运用到实际开发中,避免理论与实践脱节的问题。
本书适用于对设计模式不甚了解的初学者,同时也适合具有一定编程基础、需要提高实践技术的程序员作为参考用书。本书还可作为高等院校计算机等专业及相关培训学校的指导教材。
第1章 设计模式初见
第2章 面向对象设计原则
第3章 统一建模语言UML概述
第4章 工厂方法模式(Factory Method)
第5章 抽象工厂模式(Abstract Factory)
第6章 建造者模式(Builder Factory)
第7章 原型模式(Prototype)
第8章 单例模式(Singleton)
第9章 适配器模式(Adapter)
第10章 桥接模式(Bridge)
第11章 代理模式(Proxy)
第12章 外观模式(Facade)
第13章 装饰模式(Decorator)
第14章 组合模式(Composite)
第15章 享元模式(Flyweight)
第16章 命令模式(Command)
第17章 观察者模式(Observer)
第18章 责任链模式(Chain of Responsibility)
第19章 迭代器模式(Iterator)
第20章 访问者模式(Visitor)
第21章 状态模式(State)
第22章 备忘录模式(Memento)
第23章 策略模式(Strategy)
第24章 调停者模式(Mediator)
第25章 模板方法模式(Template Method)
第26章 解释器模式(Interpreter)
第27章 设计模式总结