C#设计模式第2版pdf下载pdf下载

C#设计模式第2版百度网盘pdf下载

作者:
简介:本篇主要提供C#设计模式第2版pdf下载
出版社:哈尔滨市学府书店图书专营店
出版时间:2018-01
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍


内容介绍

本书使用C#语言详细讲解了24种设计模式。全书共分为26章,内容包括设计模式概述、面向对象设计原则、简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式、单例模式、适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式、职责链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式和访问者模式。 本书结合大量项目应用实例,对每一个设计模式都进行了细致的讲解。本书结构合理、条理清晰、内容丰富,且在每一章后面都配有大量的习题,在附录中还提供了对UML类图相关知识的介绍和三套设计模式模拟试题。 本书既可作为高等院校计算机及软件相关专业本科生和研究生软件设计模式、软件体系结构、面向对象分析与设计等课程教材,也可作为各软件培训机构培训教材及全国计算机技术与软件专业技术资格(水平)考试辅导教材,还可作为软件架构师、软件工程师及广大软件爱好者的自学读本和参考用书。

关联推荐

详细讲解7个面向对象设计原则和24个常用设计模式学练结合,包含超过150道习题和3套设计模式模拟试题 
目录

目录 DY章设计模式概述 1.1设计模式的诞生与发展 1.1.1模式的诞生与定义 1.1.2软件模式概述 1.1.3设计模式的发展 1.2设计模式的定义与分类

 

目录

 

DY章设计模式概述

 

1.1设计模式的诞生与发展

 

1.1.1模式的诞生与定义

 

1.1.2软件模式概述

 

1.1.3设计模式的发展

 

1.2设计模式的定义与分类

 

1.2.1设计模式的定义

 

1.2.2设计模式的基本要素

 

1.2.3设计模式的分类

 

1.3GoF设计模式简介

 

1.4设计模式的优点

 

1.5本章小结

 

1.6习题

 

第2章面向对象设计原则

 

2.1面向对象设计原则概述

 

2.2单一职责原则

 

2.3开闭原则

 

2.4里氏代换原则

 

2.5依赖倒转原则

 

2.6接口隔离原则

 

2.7合成复用原则

 

2.8迪米特法则

 

2.9本章小结

 

2.10习题

 

第3章简单工厂模式

 

3.1创建型模式

 

3.2简单工厂模式概述

 

3.3简单工厂模式的结构与实现

 

3.3.1简单工厂模式的结构

 

3.3.2简单工厂模式的实现

 

3.4简单工厂模式的应用实例

 

3.5创建对象与使用对象

 

3.6简单工厂模式的简化

 

3.7简单工厂模式的优缺点与适用环境

 

3.7.1简单工厂模式的优点

 

3.7.2简单工厂模式的缺点

 

3.7.3简单工厂模式的适用环境

 

3.8本章小结

 

3.9习题

 

第4章工厂方法模式

 

4.1工厂方法模式概述

 

4.2工厂方法模式的结构与实现

 

4.2.1工厂方法模式的结构

 

4.2.2工厂方法模式的实现

 

4.3工厂方法模式的应用实例

 

4.4配置文件与反射

 

4.5工厂方法的重载

 

4.6工厂方法的隐藏

 

4.7工厂方法模式的优缺点与适用环境

 

4.7.1工厂方法模式的优点

 

4.7.2工厂方法模式的缺点

 

4.7.3工厂方法模式的适用环境

 

4.8本章小结

 

4.9习题

 

第5章抽象工厂模式

 

5.1产品等级结构与产品族

 

5.2抽象工厂模式概述

 

5.3抽象工厂模式的结构与实现

 

5.3.1抽象工厂模式的结构

 

5.3.2抽象工厂模式的实现

 

5.4抽象工厂模式的应用实例

 

5.5开闭原则的倾斜性

 

5.6抽象工厂模式的优缺点与适用环境

 

5.6.1抽象工厂模式的优点

 

5.6.2抽象工厂模式的缺点

 

5.6.3抽象工厂模式的适用环境

 

5.7本章小结

 

5.8习题

 

第6章建造者模式

 

6.1建造者模式概述

 

6.2建造者模式的结构与实现

 

6.2.1建造者模式的结构

 

6.2.2建造者模式的实现

 

6.3建造者模式的应用实例

 

6.4指挥者类的深入讨论

 

6.5建造者模式的优缺点与适用环境

 

6.5.1建造者模式的优点

 

6.5.2建造者模式的缺点

 

6.5.3建造者模式的适用环境

 

6.6本章小结

 

6.7习题

 

第7章原型模式

 

7.1原型模式概述

 

7.2原型模式的结构与实现

 

7.2.1原型模式的结构

 

7.2.2浅克隆与深克隆

 

7.2.3原型模式的实现

 

7.3原型模式的应用实例

 

7.4原型管理器

 

7.5原型模式的优缺点与适用环境

 

7.5.1原型模式的优点

 

7.5.2原型模式的缺点

 

7.5.3原型模式的适用环境

 

7.6本章小结

 

7.7习题

 

第8章单例模式

 

8.1单例模式概述

 

8.2单例模式的结构与实现

 

8.2.1单例模式的结构

 

8.2.2单例模式的实现

 

8.3单例模式的应用实例

 

8.4饿汉式单例与懒汉式单例

 

8.5单例模式的优缺点与适用环境

 

8.5.1单例模式的优点

 

8.5.2单例模式的缺点

 

8.5.3单例模式的适用环境

 

8.6本章小结

 

8.7习题

 

第9章适配器模式

 

9.1结构型模式

 

9.2适配器模式概述

 

9.3适配器模式的结构与实现

 

9.3.1适配器模式的结构

 

9.3.2适配器模式的实现

 

9.4适配器模式的应用实例

 

9.5缺省适配器模式

 

9.6双向适配器

 

9.7适配器模式的优缺点与适用环境

 

9.7.1适配器模式的优点

 

9.7.2适配器模式的缺点

 

9.7.3适配器模式的适用环境

 

9.8本章小结

 

9.9习题

 

DY0章桥接模式

 

10.1桥接模式概述

 

10.2桥接模式的结构与实现

 

10.2.1桥接模式的结构

 

10.2.2桥接模式的实现

 

10.3桥接模式的应用实例

 

10.4桥接模式与适配器模式联用

 

10.5桥接模式的优缺点与适用环境

 

10.5.1桥接模式的优点

 

10.5.2桥接模式的缺点

 

10.5.3桥接模式的适用环境

 

10.6本章小结

 

10.7习题

 

DY1章组合模式

 

11.1组合模式概述

 

11.2组合模式的结构与实现

 

11.2.1组合模式的结构

 

11.2.2组合模式的实现

 

11.3组合模式的应用实例

 

11.4透明组合模式与安全组合模式

 

11.5组合模式的优缺点与适用环境

 

11.5.1组合模式的优点

 

11.5.2组合模式的缺点

 

11.5.3组合模式的适用环境

 

11.6本章小结

 

11.7习题

 

DY2章装饰模式

 

12.1装饰模式概述

 

12.2装饰模式的结构与实现

 

12.2.1装饰模式的结构

 

12.2.2装饰模式的实现

 

12.3装饰模式的应用实例

 

12.4透明装饰模式与半透明装饰模式

 

12.5装饰模式的优缺点与适用环境

 

12.5.1装饰模式的优点

 

12.5.2装饰模式的缺点

 

12.5.3装饰模式的适用环境

 

12.6本章小结

 

12.7习题

 

DY3章外观模式

 

13.1外观模式概述

 

13.2外观模式的结构与实现

 

13.2.1外观模式的结构

 

13.2.2外观模式的实现

 

13.3外观模式的应用实例

 

13.4抽象外观类

 

13.5外观模式的优缺点与适用环境

 

13.5.1外观模式的优点

 

13.5.2外观模式的缺点

 

13.5.3外观模式的适用环境

 

13.6本章小结

 

13.7习题

 

DY4章享元模式

 

14.1享元模式概述

 

14.2享元模式的结构与实现

 

14.2.1享元模式的结构

 

14.2.2享元模式的实现

 

14.3享元模式的应用实例

 

14.4有外部状态的享元模式

 

14.5单纯享元模式和复合享元模式

 

14.6享元模式的优缺点与适用环境

 

14.6.1享元模式的优点

 

14.6.2享元模式的缺点

 

14.6.3享元模式的适用环境

 

14.7本章小结

 

14.8习题

 

DY5章代理模式

 

15.1代理模式概述

 

15.2代理模式的结构与实现

 

15.2.1代理模式的结构

 

15.2.2代理模式的实现

 

15.3代理模式的应用实例

 

15.4远程代理

 

15.5虚拟代理

 

15.6缓冲代理

 

15.7代理模式的优缺点与适用环境

 

15.7.1代理模式的优点

 

15.7.2代理模式的缺点

 

15.7.3代理模式的适用环境

 

15.8本章小结

 

15.9习题

 

DY6章职责链模式

 

16.1行为型模式

 

16.2职责链模式概述

 

16.3职责链模式的结构与实现

 

16.3.1职责链模式的结构

 

16.3.2职责链模式的实现

 

16.4职责链模式的应用实例

 

16.5纯与不纯的职责链模式

 

16.6职责链模式的优缺点与适用环境

 

16.6.1职责链模式的优点

 

16.6.2职责链模式的缺点

 

16.6.3职责链模式的适用环境

 

16.7本章小结

 

16.8习题

 

DY7章命令模式

 

17.1命令模式概述

 

17.2命令模式的结构与实现

 

17.2.1命令模式的结构

 

17.2.2命令模式的实现

 

17.3命令模式的应用实例

 

17.4实现命令队列

 

17.5记录请求日志

 

17.6实现撤销操作

 

17.7宏命令

 

17.8命令模式的优缺点与适用环境

 

17.8.1命令模式的优点

 

17.8.2命令模式的缺点

 

17.8.3命令模式的适用环境

 

17.9本章小结

 

17.10习题

 

DY8章解释器模式

 

18.1解释器模式概述

 

18.2文法规则和抽象语法树

 

18.3解释器模式的结构与实现

 

18.3.1解释器模式的结构

 

18.3.2解释器模式的实现

 

18.4解释器模式的应用实例

 

18.5解释器模式的优缺点与适用环境

 

18.5.1解释器模式的优点

 

18.5.2解释器模式的缺点

 

18.5.3解释器模式的适用环境

 

18.6本章小结

 

18.7习题

 

DY9章迭代器模式

 

19.1迭代器模式概述

 

19.2迭代器模式的结构与实现

 

19.2.1迭代器模式的结构

 

19.2.2迭代器模式的实现

 

19.3迭代器模式的应用实例

 

19.4使用内部类实现迭代器

 

19.5.NET内置迭代器

 

19.6迭代器模式的优缺点与适用环境

 

19.6.1迭代器模式的优点

 

19.6.2迭代器模式的缺点

 

19.6.3迭代器模式的适用环境

 

19.7本章小结

 

19.8习题

 

第20章中介者模式

 

20.1中介者模式概述

 

20.2中介者模式的结构与实现

 

20.2.1中介者模式的结构

 

20.2.2中介者模式的实现

 

20.3中介者模式的应用实例

 

20.4扩展中介者与同事类

 

20.5中介者模式的优缺点与适用环境

 

20.5.1中介者模式的优点

 

20.5.2中介者模式的缺点

 

20.5.3中介者模式的适用环境

 

20.6本章小结

 

20.7习题

 

第21章备忘录模式

 

21.1备忘录模式概述

 

21.2备忘录模式的结构与实现

 

21.2.1备忘录模式的结构

 

21.2.2备忘录模式的实现

 

21.3备忘录模式的应用实例

 

21.4实现多次撤销

 

21.5备忘录模式的优缺点与适用环境

 

21.5.1备忘录模式的优点

 

21.5.2备忘录模式的缺点

 

21.5.3备忘录模式的适用环境

 

21.6本章小结

 

21.7习题

 

第22章观察者模式

 

22.1观察者模式概述

 

22.2观察者模式的结构与实现

 

22.2.1观察者模式的结构

 

22.2.2观察者模式的实现

 

22.3观察者模式的应用实例

 

22.4观察者模式与.NET中的委托事件模型

 

22.5观察者模式与MVC

 

22.6观察者模式的优缺点与适用环境

 

22.6.1观察者模式的优点

 

22.6.2观察者模式的缺点

 

22.6.3观察者模式的适用环境

 

22.7本章小结

 

22.8习题

 

第23章状态模式

 

23.1状态模式概述

 

23.2状态模式的结构与实现

 

23.2.1状态模式的结构

 

23.2.2状态模式的实现

 

23.3状态模式的应用实例

 

23.4共享状态

 

23.5使用环境类实现状态的转换

 

23.6状态模式的优缺点与适用环境

 

23.6.1状态模式的优点

 

23.6.2状态模式的缺点

 

23.6.3状态模式的适用环境

 

23.7本章小结

 

23.8习题

 

第24章策略模式

 

24.1策略模式概述

 

24.2策略模式的结构与实现

 

24.2.1策略模式的结构

 

24.2.2策略模式的实现

 

24.3策略模式的应用实例

 

24.4PetShop 4.0中的订单处理

 

24.5策略模式的优缺点与适用环境

 

24.5.1策略模式的优点

 

24.5.2策略模式的缺点

 

24.5.3策略模式的适用环境

 

24.6本章小结

 

24.7习题

 

第25章模板方法模式

 

25.1模板方法模式概述

 

25.2模板方法模式的结构与实现

 

25.2.1模板方法模式的结构

 

25.2.2模板方法模式的实现

 

25.3模板方法模式的应用实例

 

25.4钩子方法的使用

 

25.5模板方法模式的优缺点与适用环境

 

25.5.1模板方法模式的优点

 

25.5.2模板方法模式的缺点

 

25.5.3模板方法模式的适用环境

 

25.6本章小结

 

25.7习题

 

第26章访问者模式

 

26.1访问者模式概述

 

26.2访问者模式的结构与实现

 

26.2.1访问者模式的结构

 

26.2.2访问者模式的实现

 

26.3访问者模式的应用实例

 

26.4访问者模式与组合模式联用

 

26.5访问者模式的优缺点与适用环境

 

26.5.1访问者模式的优点

 

26.5.2访问者模式的缺点

 

26.5.3访问者模式的适用环境

 

26.6本章小结

 

26.7习题

 

附录AUML类图

 

A.1UML概述

 

A.2类与类的UML表示

 

A.3类之间的关系

 

附录B设计模式模拟试题

 

B.1模拟试题一

 

B.2模拟试题二

 

B.3模拟试题三

 

参考文献

显示全部信息

在线试读

第3章简单工厂模式 本章导学 创建型模式关注对象的创建过程,是一类Z常见的设计模式,在软件开发中的应用非常广泛。创建型模式描述如何将对象的创建和使用分离,让用户在使用对象时无须关心对象的创建细节,从而降低系统的耦合度,让设计方案更易于修改和扩展。简单工厂模式是Z简单的设计模式之一,它虽然不属于GoF的23种设计模式,但是应用也较为频繁,同时它也是学习其他创建型模式的基础。在简单工厂模式中,只需要记住一个简单的参数即可获得所需的对象实例,它提供专门的核心工厂类来负责对象的创建,实现对象的创建和使用分离。本章将对6种创建型模式进行简要的介绍,并通过实例来学习简单工厂模式,理解简单工厂模式的结构及特点,学习如何在实际软件项目开发中合理地使用简单工厂模式。 本章知识点  创建型模式。 简单工厂模式的定义。 简单工厂模式的结构。 简单工厂模式的实现。 简单工厂模式的应用。 简单工厂模式的优缺点。 简单工厂模式的适用环境。 3.1创建型模式软件系统在运行时,类将实例化成对象,并由这些对象协作完成各项业务功能。创建型模式(Creational Pattern)关注对象的创建过程,是一类Z常用的设计模式,在软件开发中的应用非常广泛。创建型模式对类的实例化过程进行了抽象,能够将软件模块中对象的创建和对象的使用分离,对用户隐藏了类的实例创建细节。创建型模式描述如何将对象的创建和使用分离,让用户在使用对象时无须关心对象的创建细节,从而降低系统的耦合度,让设计方案更易于修改和扩展。每一个创建型模式都通过采用不同的解决方案来回答3个问题: 创建什么(What),由谁创建(Who)和何时创建(When)。在GoF设计模式中,包含5种创建型模式,通常将一种非GoF设计模式——简单工厂模式作为学习其他工厂模式的基础,这6种设计模式的名称、定义、学习难度和使用频率如表31所示。 表31创建型模式一览表 模 式 名 称定义学 习 难 度使 用 频 率 简单工厂模式第3章简单工厂模式
本章导学
创建型模式关注对象的创建过程,是一类Z常见的设计模式,在软件开发中的应用非常广泛。创建型模式描述如何将对象的创建和使用分离,让用户在使用对象时无须关心对象的创建细节,从而降低系统的耦合度,让设计方案更易于修改和扩展。简单工厂模式是Z简单的设计模式之一,它虽然不属于GoF的23种设计模式,但是应用也较为频繁,同时它也是学习其他创建型模式的基础。在简单工厂模式中,只需要记住一个简单的参数即可获得所需的对象实例,它提供专门的核心工厂类来负责对象的创建,实现对象的创建和使用分离。本章将对6种创建型模式进行简要的介绍,并通过实例来学习简单工厂模式,理解简单工厂模式的结构及特点,学习如何在实际软件项目开发中合理地使用简单工厂模式。
本章知识点
 创建型模式。 简单工厂模式的定义。 简单工厂模式的结构。 简单工厂模式的实现。 简单工厂模式的应用。 简单工厂模式的优缺点。 简单工厂模式的适用环境。
3.1创建型模式软件系统在运行时,类将实例化成对象,并由这些对象协作完成各项业务功能。创建型模式(Creational Pattern)关注对象的创建过程,是一类Z常用的设计模式,在软件开发中的应用非常广泛。创建型模式对类的实例化过程进行了抽象,能够将软件模块中对象的创建和对象的使用分离,对用户隐藏了类的实例创建细节。创建型模式描述如何将对象的创建和使用分离,让用户在使用对象时无须关心对象的创建细节,从而降低系统的耦合度,让设计方案更易于修改和扩展。每一个创建型模式都通过采用不同的解决方案来回答3个问题: 创建什么(What),由谁创建(Who)和何时创建(When)。在GoF设计模式中,包含5种创建型模式,通常将一种非GoF设计模式——简单工厂模式作为学习其他工厂模式的基础,这6种设计模式的名称、定义、学习难度和使用频率如表31所示。

表31创建型模式一览表

模 式 名 称定义学 习 难 度使 用 频 率

简单工厂模式
(Simple Factory Pattern)定义一个工厂类,它可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同的父类★★☆☆☆★★★☆☆工厂方法模式
(Factory Method Pattern)定义一个用于创建对象的接口,但是让子类决定将哪一个类实例化。工厂方法模式让一个类的实例化延迟到其子类★★☆☆☆★★★★★抽象工厂模式
(Abstract Factory Pattern)提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类★★★★☆★★★★★建造者模式
(Builder Pattern)将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示★★★★☆★★☆☆☆原型模式
(Prototype Pattern)使用原型实例指定待创建对象的类型,并且通过复制这个原型来创建新的对象★★★☆☆★★★☆☆单例模式
(Singleton Pattern)确保一个类只有一个实例,并提供一个全局访问点来访问这个WY实例★☆☆☆☆★★★★☆

3.2简单工厂模式概述简单工厂模式并不属于GoF的23种经典设计模式,但通常将它作为学习其他工厂模式的基础,下面通过一个简单实例来引出简单工厂模式。考虑一个水果农场,当用户需要某一种水果时,该农场能够根据用户所提供的水果名称返回该水果。在此,水果农场被称为工厂(Factory),而生产出的水果被称为产品(Product),水果的名称则被称为参数,工厂可以根据参数的不同返回不同的产品,这就是简单工厂模式的动机。该过程的示意图如图31所示,用户无须知道苹果(Apple)、橙(Orange)、香蕉(Banana)如何创建,只需要知道水果的名称即可得到对应的水果。 显示全部信息