第1章抽象和建模_第1页
第1章抽象和建模_第2页
第1章抽象和建模_第3页
第1章抽象和建模_第4页
第1章抽象和建模_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、程序设计模式程序设计模式一、教学安排,共一、教学安排,共32学时学时(916周周)二、考试办法:闭卷笔试二、考试办法:闭卷笔试三、课程结束成绩评定三、课程结束成绩评定 笔试:笔试:70% 平时成绩平时成绩: 30%(包括作业、考勤、课堂回答问题)包括作业、考勤、课堂回答问题)1四、参考教材四、参考教材作者:作者:美美 Eric Freeman, Elisabeth Freeman书名:书名:Head First 设计模式设计模式 出版社:中国电力出版社出版社:中国电力出版社出版时间:出版时间:2007年年9月月2五、作业及答疑五、作业及答疑教学和答疑教师:教学和答疑教师:周登文,控制与计算机学

2、院,控制与计算机学院 答疑地点:答疑地点:主楼E座 - 707(7层) 固定答疑时间:固定答疑时间:每周二下午2:004:00pm,其它答 疑时间可预约 答疑邮箱:答疑邮箱: 作业邮箱:作业邮箱: 作业文件命名:作业文件命名:每次作业文件打一个包,文件名为“班级-学号姓名-作业序号”。例如:计算计算0401-3122040117魏闪闪魏闪闪-1.zip。 http:/ http:/ 情景应该是会不断地出现的,解决方案也应该是可以反复使用的。6 模式不是代码,而是针对设计问题的通用解 决方案。我们可以应用它到特定问题中,编 写出良好的程序代码。 良好的OO设计必须具备可复用、可扩充、可 维护三个

3、特性。 知道OO基础,并不足以让我们设计出良好的 OO系统,而模式可以让我们建造出具有良好 OO设计的系统。7 模式是在长期的程序设计实践中发现的久经 考验的解决方案。今天,已有成千上万的软 件开发人员在学习它和应用它。 模式让软件开发人员具有了共享的语言,能 够实现最大化的沟通。8第一章第一章 抽象和建模抽象和建模抽象实现简化抽象实现简化 人类天生就有抽象的本领:能够找到事物的重要特征,过滤或忽略非本质的细节。我们每天都在自觉或不自觉地使用抽象。9 抽象的例子:交通图。并未标明地面上的所有对象。 相同地区的交通图、气象图和人口密度分布图:提炼出的特征完全不同,它与使用地图的人的要求相对应。

4、同一个地方:艺术家欣赏的可能是它的色彩、纹理等;建筑师欣赏的可能是它的位置,一个建筑工程可能要铲掉哪些树;生态学家欣赏的可能是动植物的品种和特征;小孩子欣赏的可能是在哪棵树上最适宜放一个小风车。10抽象实现概括抽象实现概括通过抽象中去掉细节,可形成用于特殊环境下的普遍知识。一般细胞细胞质细胞壁细胞核11这个简化图并不包含一个真正的细胞的全部组成,但是,课堂上常用这样的图来描述细胞的结构。实际上,细胞还分成许多种类,如神经元细胞、肌肉细胞或白细胞等等,图中的特征是所有细胞共有的。12分级分类抽象分级分类抽象显示中抽象出来的东西往往非常多,为了应付这种复杂性,我们通常将信息分类。 自然对象植物动物

5、矿物哺乳动物 鱼鸟两栖动物 昆虫狗奶牛猴子.爬行动物13给定的时刻只考虑一个层次,也就是一个子集(或子树)。如果只关心哺乳动物,则集中在哺乳动物子树上。进一步简化的分类图涉及的对象只有4个,而不是原来的13个。不论分层的对象多复杂,这样都可以处理。猴子.哺乳动物狗奶牛14抽象是软件开发的基础抽象是软件开发的基础 软件系统开发是从搜集信息开始的,要判断哪些是可以实现的,哪些是不能实现的。 如果不能抓住重要的特征,包含的细节太多,会使未来的软件系统过于复杂,给设计、编程、调试、测试、文挡编制、维护和扩展带来困难。15抽象的复用抽象的复用当我们学习新知识的时候,会在大脑中搜索已有的知识,以便能够找到

6、可利用的相似性。例如,第一次学习骑两轮自行车时,可能会利用小时侯骑三轮童车的经验:它们都有控制方向的手把,驱动自行车的脚踏板。但是这两种车并不完全一样,两轮车需要更高的身体平衡技巧。这样,在原来已经掌握的技能基础上,还要学习身体平衡的新技能。16这种通过对特性进行比较发现相似的抽象,并再次成功使用该抽象的技术称为模式匹配和复用模式匹配和复用。模式重用对于面向对象软件开发来说是一个非常重要的技术,它可以使我们避免对每一个工程从头做起。如果能够重用前面工程中的抽象或模型的话,那么,就可以把重点放在新工程与老工程不同的地方上,从而节省大量的时间。17挑战挑战虽然抽象是认识事物的很自然的过程,但是,获得一个好的抽象,建立一个正确的软件系统模型也许是软件工程中最困难的问题:抽象有很多可能性。不同的人肯定得出不同抽象模型,谁的模型最好?最好的和正确的模型可能不只一个。对一个具体问题的模型,很难说是最好的,只是更好或更差的。很难测试一个模型是不是满足了用户的全部需求。18

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论