图书前言

F  O R E W O R D

前言

面向对象程序设计已经成为软件设计开发领域的主流,而学习使用设计模式非常有助于软件开发人员开发出易维护、易扩展、易复用的代码。而且,目前越来越多的大学和培训机构也把面向对象技术作为主要教学内容。

本书从面向对象的基本概念入手,介绍面向对象程序设计的主要原理和方法,重点探讨了在程序设计中怎样使用著名的24个设计模式。本书编者在十余年的项目开发实践中积累了丰富的开发经验,在近年来的项目开发中,也有意识地大量使用设计模式来提高系统的可复用性。在对各类设计模式的使用中常常沉醉于设计模式精妙的构思和优雅的结构,于是产生了编写一本用实例来透彻讲解设计模式使用的参考书的想法,鉴于高等院校对设计模式相关教材的迫切需要,因此决定将本书以教材的形式撰写。

作者于2009年编写了《实用软件设计模式教程》,由清华大学出版社出版。该书出版后,受到了广大读者的欢迎,认为该书概念清晰,叙述详尽,深入浅出,通俗易懂。根据发展的需要,作者于2016年编写了《实用软件设计模式教程(第2版)》,本书第2版相较第1版,对最新的软件架构技术进行了补充阐述,紧跟当前技术发展,同时改用业界使用较为广泛的C#程序设计语言作为设计模式的描述语言,为读者的工作和学习提供有益的帮助。

本书严格执行面向对象设计标准并使用实例讲解每个设计模式,使读者易于理解、便于使用,最后一章还用实际项目开发实践中的实例作为例子,介绍各种设计模式在实际项目中综合应用的方法。

本书的章节安排如下。

第1章为面向对象基础,详细分析面向对象方法,从面向对象方法的产生、面向对象方法的概念引出了面向对象方法的优势,又结合一个具体的应用系统实例,细致分析了面向对象分析、面向对象设计、面向对象编程实现、面向对象的测试以及面向对象软件设计原则的主要步骤和方法。

第2章为C#面向对象编程基础,介绍C#语言的相关概念和技术,为后续的设计模式学习打下基础。 

第3章为设计模式,按创建型、结构型、行为型分类,详细分析23种设计模式,在介绍每个模式时,以一个软件设计开发中的实际问题为引子,探讨一般实现方法的缺陷,进而介绍新模式的结构,再以一个实际的例子展现模式的编程方法,最后对使用模式的效果进行分析。

第4章为综合实例,该实例集中使用了多种设计模式,展示设计模式在应用系统开发实践中的应用。

第5章为软件架构与架构建模技术,介绍软件架构的定义和发展史,分析了几种常用的软件架构模式,并简要介绍软件架构建模技术。

第6章为面向服务的软件架构——SOA,简要介绍SOA、SOA的框架及其应用实例。

第7章为云计算环境下的软件架构,主要介绍在云计算环境下软件架构的技术和内容。本书的编写过程中,林春喜、杨刚、吴夏、武晓周、姚智海、王婵、陈鹏、闫志浩等人完成了大量校正、录入工作,在此对他们的工作表示感谢。

在此谨对所有曾经支持和帮助过我们的同志和朋友表示真挚的谢意。

由于我们水平有限,再加上时间紧迫,书中难免有疏漏和不妥之处,盼望专家和广大读者不吝指正。

编者2016年12月