设计模式实训教程 前言
今天下午收到了清华大学出版社的《设计模式实训教程》,终于出版了,,出版时间为2012年1月,这本书作为《设计模式》的配套教程,融合了我近几年收集到的设计模式实例,还编制了大量设计模式练习题,应该说是国内第一本全面的设计模式习题集和实训手册。
当当网 亚马逊 京东网
以下是本书的前言部分:
随着面向对象技术的发展和广泛应用,设计模式已成为面向对象开发人员的必备技能之一。无论是面向对象的初学者还是具有一定开发经验的程序员,都可以通过对设计模式的学习和应用加深对面向对象思想的理解,开发出具有更好的可扩展性和复用性的软件。笔者在多年的面向对象教学和实践开发中也深刻体会到学习设计模式的意义,在教授C++、Java、C#等课程的同时,结合一些常用的设计模式可以让学生更好地理解面向对象的特性、抽象层的作用、合成复用的优点等原本很抽象、较难理解的思想和概念。正如笔者经常和学生以及学员们说的: 掌握设计模式后,就会发现面向对象设计是一门艺术,就会发现有些模式是如此巧妙,就一定会受益于GoF所做的工作。
当前,在很多高校的软件工程专业的本科或研究生培养方案中都设置了面向对象分析与设计、软件设计模式、软件体系结构等课程,不少企业也开始注重对员工面向对象编程思想和设计模式等的培训,部分软件培训机构也将设计模式作为软件工程师培训课程的基本内容之一。在我国较为权威的全国计算机技术与软件专业技术资格(水平)考试的系统架构设计师(高级)、软件设计师(中级)等级别的考试中,关于设计模式的试题也占据一定的比例,近几年软件设计师考试题中固定有一道15分的设计模式大题,2009年开考的系统架构设计师考试中也有不少设计模式相关试题,笔者也有幸以湖南省第一、全国第四的成绩成为第一批国家认证系统架构设计师。
近年来,笔者一直承担中南大学软件学院Java实训、软件体系结构、设计模式等课程的教学任务,同时也作为长沙创智新程教育技术有限公司的软件工程专业课顾问承担设计模式、系统分析和设计等课程的教学和教研工作,也给一些软件企业提供UML和设计模式等课程的企业内训,并主持和参与一些软件项目的开发工作,从这些教学和开发工作中,笔者发现通过实例,尤其是结合软件项目实例是学习和掌握设计模式的最佳途径,而目前已出版的很多设计模式书籍大多通过一些生活实例来引入和学习设计模式,虽然可以让读者很轻松地学习,但很难做到深入理解和熟练运用,此外,部分教材缺少相应的练习来加深对所学模式的理解和掌握,有的书中虽有一些练习,但数量不多且针对性不强。因此,笔者一直想将这些年积累下来的一些实例整理成册,于是本书诞生了。
1. 本书特色
本书是国内第一本设计模式实训教程和习题集,通过大量项目实例让读者加深对GoF设计模式的理解,在学习模式的同时掌握如何在实际软件开发中运用模式,并通过大量练习来强化对设计模式的理解和掌握。笔者整理了这些年在设计模式教学和企业项目开发经验中积累的设计模式实训素材,同时参考了大量已有的设计模式书籍和网站,广泛收集各类设计模式实例和试题,包括历年全国计算机技术与软件专业技术资格(水平)考试试题、知名软件公司招聘面试和笔试题、国内外高校设计模式课程考试试题等,同时结合实际项目设计了大量练习题,包括选择题、模式代码填空题、综合分析题等多种题型,让读者在学习设计模式之余检验学习效果并结合实例来巩固所学知识。收集和整理的过程虽然很辛苦,也很耗时,但若能为我国软件事业的发展和面向对象技术的推广尽一份绵薄之力,所有付出都是值得的。
为了让设计模式的初学者也能够看懂本教程,在本书中的每一章前面都包含了“知识讲解”单元,让读者可以较快了解模式的基本知识,再结合后续实例进行深入学习。当然,如果配有一本专门的设计模式教材来学习则效果更好,本书也是笔者另外一本设计模式书籍《设计模式》的配套习题集,部分实例来自《设计模式》每一章后的思考和练习题。如果在学习完《设计模式》中的每一个模式之后,再通过本书的练习来进一步巩固,笔者相信会取得更好的学习效果。在本书中,针对每一个模式都提供了一个完整的实例,包括UML类图、源代码和实例分析,且每个模式都对应多道选择题、一道代码填空题和一道综合分析题,所有练习都提供了参考答案,部分综合分析题还提供了完整代码,本书所有类图均严格按照UML 2.0标准绘制,所有代码均在JDK 1.6环境下通过测试且运行无误。
2. 本书内容
本书包括6章:
第1章介绍UML类图并通过实训让读者掌握如何阅读和绘制类图,学习使用类图来构造软件的静态模型;
第2章介绍7个常用的面向对象设计原则,结合实例学习如何使用这些原则对系统进行重构;
第3章介绍6个创建型设计模式,第4章介绍7个结构型设计模式,第5章介绍11个行为型设计模式,从第3章到第5章,结合实例和大量实训练习来进行学习;
第6章对设计模式的相关知识进行补充,提供了6个模式联用解决方案,并通过两个综合实例来学习如何在应用开发中使用设计模式,同时提供了一些企业招聘过程中出现的面试和笔试试题并给出参考答案。本书所有源代码和类图都可通过清华大学出版社网站(http://www.tup.tsinghua.edu.cn)下载。
3. 目标读者
本书既可作为各类高等院校计算机和软件相关专业本专科生和研究生软件设计模式、软件体系结构等课程教学辅导用书、实验课教材和教师参考用书,也可作为全国计算机技术与软件专业技术资格(水平)考试辅导用书和软件架构师、软件工程师等开发人员的参考用书,还可以作为企业内训、设计模式爱好者和自学者的习题集和实训教程以及就业之前的复习用书。
4. 致谢
由于本书是一本实训教程和实战手册,涉及大量的实例及分析,这些实例的收集、整理和设计工作离不开众多同事和学生的帮助,在此对他们一并表示感谢。感谢中南大学软件学院胡志刚教授在百忙之中抽出宝贵时间对本书进行细致的审校,感谢中南大学软件学院江林、杨柳和中南大学信息科学与工程学院郭克华、王斌等在本书写作过程中提出的宝贵意见和建议,感谢长沙创智新程教育技术有限公司任波、夏绪武、赵璟等参与部分内容的校稿工作,感谢唐磊、段玉冰、马元文、李辉、袁磊、谭华、雷松等学生发现本书中的文字纰漏和错误,感谢湖南科创信息技术股份有限公司彭宇波、刘剑峰等员工提供的一些企业应用实例,感谢我的爱人夏莉,她一直在我背后默默地付出,感谢我的父母和家人,他们给了我极大的支持。在编写过程中我参考和引用了国内外很多书籍和网站的相关内容,个别实例和练习的初始原型也来源于网络,由于涉及的网站和网页太多,没有一一列举,在此一并予以感谢。最后特别感谢清华大学出版社为本书出版所作出的努力。由于时间仓促、学识有限,书中不足和疏漏之处难免,恳请广大读者将意见和建议通过清华大学出版社反馈给我,以便在后续版本中不断改进和完善。
刘伟 2011年11月2日于长沙岳麓山下
【作者:刘伟 http://blog.csdn.net/lovelion】
设计模式实训教程 前言相关推荐
- 《设计模式实训教程》前言
今天下午收到了清华大学出版社的<设计模式实训教程>,终于出版了,,出版时间为2012年1月,这本书作为<设计模式>的配套教程,融合了我近几年收集到的设计模式实例,还编制了大量设 ...
- 《计算机应用基础实训教程》,《计算机应用基础实训教程》修改稿(文).doc
<计算机应用基础实训教程>修改稿(文).doc 模块二 Word文档的制作 原有项目不变 替换项目一拓展延伸 1.文字录入的原则 先录入然后再排版,且不用空格键进行字间距格式的排版. 不用 ...
- 计算机办公软件应用实训,计算机专业职业教育实训系列教材:Office 2007办公软件实训教程...
Office2007是微软Office产品史上最具创新与革命性的一个版本.它具有全新设计的用户界面,稳定安全的文件格式.无缝高效的沟通协作.<Office2007办公软件实训教程>从初学者 ...
- 大学计算机基础王正才,大学计算机基础实训教程(Windows 7+Office 2010)
<大学计算机基础实训教程(Windows 7+Office 2010)>是王正才.张萃主编的<大学计算机基础教程(Windows 7+Office 2010)>一书的配套实验教 ...
- c语言程序设计实训教程刘涛夏启寿,C语言程序设计
作者:夏启寿\刘涛 责编:赵丽欣\郭丽娜 出版社:科学出版社 ISBN书号:978-7-03-036128-8 发行号:TP-6139.0101 出版日期:2013-1-11 定价:36 内容简介: ...
- 计算机基础操作与应用实训教程,计算机应用基础实训教程の第 3 章 Word 2003 基本操作.pdf...
计算机应用基础实训教程の第 3 章 Word 2003 基本操作.pdf (37页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.9 积分 第 3 章 ...
- 鸟哥的linux 实训教程,鸟哥的Linux基础学习实训教程
1.理想的Linux上机实践课程 每周一次.每次三小时的学与练 本书所有例题讲解,均经过鸟哥在大专院校实施多年来的测试,对于学生的理解具有相当满意的效果. 2. 提供一致性教学环境 让学习者不再有陌生 ...
- DFT实训教程笔记4(bibili版本)- ATPG
文章目录 Physical Defects Fault model Delay Fault Model Transition Delay Faults Path Delay Fault IDDQ Fa ...
- DFT实训教程笔记3(bibili版本)-SOC Scan Implementtation Scan Practice Session II
文章目录 回顾作业 scan.tcl的脚本 如何分析SPF文件 做scan时候的Flow脚本 让工具autofix rst问题 如何看preview_dft set_scan_element fals ...
最新文章
- POE POH等供电
- 开源图像编辑器 GIMP 开发者透露 2019 年计划
- 坐标变换,空间变换的本质
- 【笔记】Automatic recognition of soybean leaf diseases using UAV images and deep convolutional neural ne
- Linux 权能综述
- linux shell 求绝对值
- 5、oracle下数据完整性约束
- android 项目部署,Android发布项目到JCenter
- 【Redis】redis cluster 添加 删除 重分配 节点
- Visio2013 64位下载安装以及破解激活教程
- scratch飞机大战图片素材包,值得您的分享!
- 三年开发三年管理,三个月努力5A成绩通过PMP就在51CTO!
- 2019,我们被“黑”科技薅过的羊毛?
- 微星主板rgb_微星10款B550主板集体发布:标配PCIe 4.0、支持Zen3
- Gitlab-Runner安装并注册
- LoRa和NB-IoT会长期共存吗?
- mysql多表查询详解
- 抖音SEO之关键词排名优化详解【从入门到精通】
- rust投递箱连接箱子_箱子、栈和堆
- 面试题:打印螺旋数字