设计模式实验及习题解析/高等学校设计模式课程系列教材pdf下载

设计模式实验及习题解析/高等学校设计模式课程系列教材百度网盘pdf下载

作者:
简介:设计模式实验及习题解析/高等学校设计模式课程系列教材
出版社:
出版时间:2019-01
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

内容简介

本书是设计模式实验教程和习题集,包含完整的设计模式实验指导和丰富的练习题,为设计模式课程的教学和学习提供有力支撑。
全书分为两个部分,共11章。第1部分为设计模式课程实验,从第1章至第5章,内容包括面向对象设计原则实验、创建型设计模式实验、结构型设计模式实验、行为型设计模式实验和设计模式综合实验。第2部分为设计模式习题及解析,从第6章至第11章,内容包括面向对象设计原则习题及解析、创建型设计模式习题及解析、结构型设计模式习题及解析、行为型设计模式习题及解析、设计模式综合习题及解析和设计模式综合模拟试题及解析。
本书既可作为各类高等院校计算机及软件相关专业本、专科生和研究生设计模式课程的实验教材和教学辅导用书,也可作为全国计算机技术与软件专业技术资格(水平)考试辅导用书和软件架构师、软件工程师等开发人员的参考用书,还可作为设计模式爱好者和自学者的习题集以及就业之前的复习用书。

目录

目录
第1章面向对象设计原则实验
1.1实验目的
1.2实验内容
1.3实验要求
1.4实验步骤
1.5实验结果
1.6实验小结
第2章创建型设计模式实验
2.1实验目的
2.2实验内容
2.3实验要求
2.4实验步骤
2.5实验结果
2.6实验小结
第3章结构型设计模式实验
3.1实验目的
3.2实验内容
3.3实验要求
3.4实验步骤
3.5实验结果
3.6实验小结
第4章行为型设计模式实验
4.1实验目的
4.2实验内容
4.3实验要求
4.4实验步骤
4.5实验结果
4.6实验小结
第5章设计模式综合实验
5.1实验目的
5.2实验内容
5.3实验要求
5.4实验步骤
5.5实验结果
5.6实验小结
第6章面向对象设计原则习题及解析
6.1习题
6.1.1选择题
6.1.2综合题
6.2参考答案及习题解析
6.2.1选择题答案
6.2.2综合题答案及解析
第7章创建型设计模式习题及解析
7.1习题
7.1.1选择题
7.1.2填空题
7.1.3综合题
7.2参考答案及习题解析
7.2.1选择题答案
7.2.2填空题答案
7.2.3综合题答案及解析
第8章结构型设计模式习题及解析
8.1习题
8.1.1选择题
8.1.2填空题
8.1.3综合题
8.2参考答案及习题解析
8.2.1选择题答案
8.2.2填空题答案
8.2.3综合题答案及解析
第9章行为型设计模式习题及解析
9.1习题
9.1.1选择题
9.1.2填空题
9.1.3综合题
9.2参考答案及习题解析
9.2.1选择题答案
9.2.2填空题答案
9.2.3综合题答案及解析
第10章设计模式综合习题及解析
10.1中文题
10.2英文题
10.3中文题参考答案及解析
10.4英文题参考答案及解析
第11章设计模式综合模拟试题及解析
11.1设计模式综合模拟试题一
11.2设计模式综合模拟试题二
11.3设计模式综合模拟试题一参考答案及解析
11.4设计模式综合模拟试题二参考答案及解析
附录A常用设计模式的定义及结构图
A.1创建型设计模式
A.1.1简单工厂模式
A.1.2工厂方法模式
A.1.3抽象工厂模式
A.1.4建造者模式
A.1.5原型模式
A.1.6单例模式
A.2结构型设计模式
A.2.1适配器模式
A.2.2桥接模式
A.2.3组合模式
A.2.4装饰模式
A.2.5外观模式
A.2.6享元模式
A.2.7代理模式
A.3行为型设计模式
A.3.1职责链模式
A.3.2命令模式
A.3.3解释器模式
A.3.4迭代器模式
A.3.5中介者模式
A.3.6备忘录模式
A.3.7观察者模式
A.3.8状态模式
A.3.9策略模式
A.3.10模板方法模式
A.3.11访问者模式
参考文献

精彩书摘

  第3章结构型设计模式实验
  实验学时: 4
  每组人数: 1
  实验类型: 3 (1: 基础型2: 综合型3: 设计型4: 研究型)
  实验要求: 1 (1: 必修2: 选修3: 其他)
  实验类别: 3 (1: 基础2: 专业基础3: 专业4: 其他)
  3.1实验目的
  1. 结合实例,熟练绘制常见的结构型设计模式结构图。
  2. 结合实例,熟练使用任意一种面向对象编程语言实现常见的结构型设计模式。
  3. 通过本实验,理解每一种结构型设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些设计模式。
  3.2实验内容
  1. 某OA系统需要提供一个加密模块,将用户机密信息(例如口令、邮箱等)加密之后再存储在数据库中,系统已经定义好了数据库操作类。为了提高开发效率,现需要重用已有的加密算法,这些算法封装在一些由第三方提供的类中,有些甚至没有源代码。试使用适配器模式设计该加密模块,实现在不修改现有类的基础上重用第三方加密方法。要求绘制相应的类图并编程模拟实现,需要提供对象适配器和类适配器两套实现方案。
  2. 某手机美图APP软件支持多种不同的图像格式,例如JPG、GIF、BMP等常用图像格式,同时提供了多种不同的滤镜对图像进行处理,例如木刻滤镜(Cutout)、模糊滤镜(Blur)、锐化滤镜(Sharpen)、纹理滤镜(Texture)等。现采用桥接模式设计该APP软件,使得该软件能够为多种图像格式提供一系列图像处理滤镜,同时还能够很方便地增加新的图像格式和滤镜,绘制对应的类图并编程模拟实现。
  3. 某移动社交软件要增加一个群组(Group)功能。通过设置,用户可以将自己的动态信息(包括最新动态、新上传的视频以及分享的链接等)分享给某个特定的成员(Member),也可以分享给某个群组中的所有成员; 用户可以将成员添加至某个指定的群组; 此外,还允许用户在一个群组中添加子群组,以便更加灵活地实现面向特定人群的信息共享。现采用组合模式设计该群组功能,绘制对应的类图并编程模拟实现。
  4. 在某OA系统中提供一个报表生成工具,用户可以通过该工具为报表增加表头和表尾,允许用户为报表增加多个不同的表头和表尾,用户还可以自行确定表头和表尾的次序。为了能够灵活设置表头和表尾的次序并易于增加新的表头和表尾,现采用装饰模式设计该报表生成工具,绘制对应的类图并编程模拟实现。
  5. 某软件公司为新开发的智能手机控制与管理软件提供了一键备份功能,通过该功能可以将原本存储在手机中的通讯录、短信、照片、歌曲等资料一次性全部拷贝到移动存储介质(例如MMC卡或SD卡)中。在实现过程中需要与多个已有的类进行交互,例如通讯录管理类、短信管理类等。为了降低系统的耦合度,试使用外观模式来设计并编程模拟实现该一键备份功能。
  6. 某OA系统采用享元模式设计权限控制与管理模块,在该模块中,将与系统功能相对应的业务类设计为享元类并将相应的业务对象存储到享元池中(提示: 可使用Map实现,key为业务对象对应的权限编码,value为业务对象)。用户身份验证成功后,系统通过存储在数据库中的该用户的权限编码集从享元池获取相应的业务对象并构建权限列表,在界面上显示用户所拥有的权限。根据以上描述,绘制对应的类图并编程模拟实现。
  7. 在某电子商务系统中,为了提高查询性能,需要将一些频繁查询的数据保存到内存的辅助存储对象中(提示: 可使用Map实现)。用户在执行查询操作时,先判断辅助存储对象中是否存在待查询的数据,如果不存在,则通过数据操作对象查询并返回数据,然后将数据保存到辅助存储对象中,否则直接返回存储在辅助存储对象中的数据。现采用代理模式中的缓冲代理实现该功能,要求绘制对应的类图并编程模拟实现。
  3.3实验要求
  1. 结合实例,绘制常见结构型设计模式的结构图。
  2. 使用任意一种面向对象编程语言实现常见结构型设计模式实例,代码运行正确。
  3.4实验步骤
  练习1: 结合实例,绘制适配器模式实例结构图并用面向对象编程语言实现该模式实例。
  练习2: 结合实例,绘制桥接模式实例结构图并用面向对象编程语言实现该模式实例。
  练习3: 结合实例,绘制组合模式实例结构图并用面向对象编程语言实现该模式实例。
  练习4: 结合实例,绘制装饰模式实例结构图并用面向对象编程语言实现该模式实例。
  练习5: 结合实例,绘制外观模式实例结构图并用面向对象编程语言实现该模式实例。
  练习6: 结合实例,绘制享元模式实例结构图并用面向对象编程语言实现该模式实例。
  练习7: 结合实例,绘制代理模式实例结构图并用面向对象编程语言实现该模式实例。
  3.5实验结果
  练习1: 需要提供适配器模式实例的结构图(类图)和实现代码。
  练习2: 需要提供桥接模式实例的结构图(类图)和实现代码。
  练习3: 需要提供组合模式实例的结构图(类图)和实现代码。
  练习4: 需要提供装饰模式实例的结构图(类图)和实现代码。
  练习5: 需要提供外观模式实例的结构图(类图)和实现代码。
  练习6: 需要提供享元模式实例的结构图(类图)和实现代码。
  练习7: 需要提供代理模式实例的结构图(类图)和实现代码。
  3.6实验小结
  请总结本次实验的体会,包括学会了什么、遇到哪些问题、如何解决这些问题以及存在哪些有待改进的地方。
  ……

前言/序言

  前言
  设计模式是前人面向对象设计经验的积累和总结,它为改进面向对象系统的设计质量和代码质量而生,已成为面向对象开发人员的必备技能之一。目前市面上已有不少设计模式书籍,编者近年来也陆续出版了几本设计模式教材和图书,但是在已有书籍中缺乏一本设计模式实验和习题解析教程。为此,笔者将在多年教学过程中命制和收集的设计模式实验题和练习题加以整理,一方面作为设计模式课堂教学的补充和实验教学教材,另一方面也有助于读者检验对所学知识的掌握程度。
  本书是一本设计模式实验教程和设计模式习题集,包含完整的设计模式实验指导和丰富的设计模式练习题,为设计模式课程的教学和学习提供强有力的支撑。本书通过大量实验和练习让读者加深对GoF设计模式的理解和掌握,在完成练习的同时掌握如何在实际软件开发中运用模式。笔者对这些年来在设计模式教学和培训中积累的实验素材和习题进行了整理,同时参考了大量已有的设计模式书籍和网站,广泛收集各类设计模式实验题、考试题和练习题,包括历年全国计算机技术与软件专业技术资格(水平)考试试题、国内外知名软件企业招聘面试和笔试题、国内外高校设计模式课程考试试题等,并结合一些实际项目设计了大量练习题,包括选择题、模式代码填空题、综合分析题等多种题型,让读者在学习设计模式理论知识的同时通过一些源于真实项目的实验题和各类练习题来检验学习效果,进一步巩固所学知识。
  全书共分为两大部分,包括11章。第1部分为设计模式课程实验,从第1章至第5章,内容包括面向对象设计原则实验、创建型设计模式实验、结构型设计模式实验、行为型设计模式实验和设计模式综合实验; 第2部分为设计模式习题及解析,从第6章至第11章,内容包括面向对象设计原则习题及解析、创建型设计模式习题及解析、结构型设计模式习题及解析、行为型设计模式习题及解析、设计模式综合习题及解析和设计模式综合模拟试题及解析。在本书的附录部分给出了常用的24种设计模式的定义和结构图,供读者在实验和练习时参考。
  在本书的设计模式实验部分,每一道实验题均以一个裁剪的项目小实例为背景,读者可通过项目实例加深对设计模式的理解和掌握。在设计模式习题及解析部分,针对每个设计模式都提供了一系列选择题、代码填空题和综合分析题,所有练习都提供了参考答案,部分综合分析题还提供了完整代码,书中对部分有代表性的练习题进行了较详尽的解析。本书所有类图均严格按照UML 2.X标准绘制,所有代码均在JDK 1.8环境下通过测试且运行无误。本书习题和解析部分的源代码和类图可扫描封底课件二维码下载,任课教师可通过清华大学出版社获取本书实验题的参考答案。
  本书既可作为各类高等院校计算机及软件相关专业本、专科生和研究生设计模式课程的实验教材和教学辅导用书,也可作为全国计算机技术与软件专业技术资格(水平)考试辅导用书和软件架构师、软件工程师等开发人员的参考用书,还可作为设计模式爱好者和自学者的习题集以及就业之前的复习用书。
  作为一本实验教程和习题集,本书涉及大量的实验题和练习题的收集与整理等工作,这些工作离不开众多同事和学生的帮助,在此一并表示感谢。在编写过程中参考和引用了国内外很多书籍和网站的相关内容,部分练习的初始原型也来源于网络,由于涉及的网站和网页太多,无法一一列举,在此一并致以谢意。最后特别感谢清华大学出版社为本书出版所作出的努力。
  由于时间仓促、学识有限,书中不足和疏漏之处在所难免,恳请广大读者将意见和建议通过清华大学出版社反馈给笔者,以便在后续版本中不断改进和完善。
  刘伟2018年9月于长沙岳麓山下