出版时间:2009-5 出版社:清华大学出版社 作者:耿祥义,张跃平 著 页数:279 字数:444000
Tag标签:无
前言
设计模式是从许多优秀的软件系统中总结出的成功的、可复用的设计方案,已经被成功应用于许多系统的设计中。目前,面向对象程序设计已经成为软件设计开发领域的主流,而学习使用设计模式无疑非常有助于软件开发人员使用面向对象语言开发出易维护、易扩展、易复用的代码。本书面向有一定Java语言基础和一定编程经验的读者,重点探讨在Java程序设计中怎样使用著名的“23个设计模式”。本书的目的是让读者不仅学习怎样在软件没计过程中使用好设计模式,更重要的是让读者通过学习深刻地理解面向对象的设计思想,以便更好地使用面向对象语言解决设计中的诸多问题。 本书共27章,前3章为学习设计模式的一些必要知识,第4至第26章探讨、讲解“23个设计模式”,最后一章为模式分类。第1章简单介绍模式的基本概念、起源以及学习设计模式的基本方法。第2章为面向对象的一些基本原则,了解这些基本原则,有助于理解后续章节中的模式。第3章简单介绍了UML中的类图。第4至第26章的每章都包含四部分重要的内容,第一部分为一个概述,用易于理解的问题讲解使用模式的动机;第二部分是模式的结构,在这部分用一个易于理解的示例讲解模式的结构;第三部分阐述模式的优点和使用场景;第四部分结合实际问题,使用设计模式给出一个有一定难度和实用价值的示例。 为了说明一个模式的核心实质,本书精心研究了针对每个模式的示例,以便让读者结合这样的示例能更好地理解和使用模式。本书的全部示例由作者编写完成,并在JDK1.6环境下编译通过。可登录清华大学出版社网站下载书中的示例代码,本书示例代码及相关内容仅供学习Java设计模式使用,不得以任何方式抄袭出版。 希望本书能对读者学习和使用设计模式有所帮助,并请读者批评指正。
内容概要
本书面向有一定Java语言基础和一定编程经验的读者,重点探讨在Java程序设计中怎样使用著名的23个设计模式。本书的目的是让读者不仅学习怎样在软件设计中使用好设计模式,更重要的是让读者通过学习使用设计模式深刻地理解面向对象的设计思想,以便更好地使用面向对象语言解决设计中的诸多问题。 本书可以作为计算机相关专业高年级学生以及研究生的教材,也可以作为软件项目管理人员、软件开发工程师等专业人员的参考用书,可登录清华大学出版社网站(www.tup.tsinghua.edu.cn)下载书中的示例代码。
书籍目录
第1章 设计模式简介第2章 面向对象的几个基本原则第3章 UML类图简介第4章 命令模式第5章 观察者模式第6章 装饰模式第7章 策略模式第8章 适配器模式第9章 责任链模式第10章 外观模式第11章 迭代器模式第12章 中介者模式第13章 工厂方法模式第14章 抽象工厂模式第15章 生成器模式第16章 原型模式第17章 单件模式第18章 组合模式第19章 桥接模式第20章 状态模式第21章 模板方法模式第22章 代理模式第23章 享元模式第24章 访问者模式第25章 备忘录模式第26章 解释器模式第27章 模式分类参考文献
章节摘录
10.1概述 一个大的系统一般都由若干个子系统构成,每个子系统包含多个类,这些类协同合作为用户提供所需要的功能。一个客户程序中的某个类的实例如果直接和子系统的多个类的实例打交道完成某项任务,就使客户程序中的类和子系统类有过多的依赖关系,比如,邮政系统负责邮寄包裹的子系统包含Check、weight和Transport类。Check类的实例负责对包裹进行安全检查,weight类的实例负责根据包裹的重量计算邮资,Transport类的实例负责为包裹选择运输工具。一个要邮寄包裹的用户如果直接和负责邮寄包裹的子系统的类打交道,就必须首先让Check类的实例对包裹进行检查,然后再让weight类的实例为包裹计算邮资,最后让Transport类实例为包裹选择一个运输工具,这就使用户非常不方便,如图10.1所示。 外观模式是简化用户和子系统进行交互的成熟模式,外观模式的关键是为子系统提供一个称作外观的类,该外观类的实例负责和子系统中类的实例打交道。当用户想要和子系统中的若干个类的实例打交道时,可以代替地和子系统的外观类的实例打交道。比如,对于前面叙述的邮寄包裹的子系统,可以为其提供一个外观类ServetForClient,当用户想邮寄包裹时,可以直接和ServerForClient的实例打交道,用户不必了解邮寄包裹的子系统中类的细节,如图10.2所示。
图书封面
图书标签Tags
无
评论、评分、阅读与下载