1 / 51
文档名称:

第11章 面向对象设计.ppt

格式:ppt   页数:51
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第11章 面向对象设计.ppt

上传人:中国课件站 2011/10/11 文件大小:0 KB

下载得到文件列表

第11章 面向对象设计.ppt

文档介绍

文档介绍:第十一章面向对象设计 (Object-Oriented Design)
§1. OOD准则:优秀软件设计的一个重要特点是容易维护
回顾:SD准则包括模块化抽象
信息隐藏模块
对于 OOD有类似的准则:
1、模块= 对象
§1. OOD准则
过程抽象: 在SD中已讨论
数据抽象: Class即是一种抽象数据类型。外界无须知道实现方法,按照类规格说明(即协议)可以使用合法的操作符,利用这些操作对类实例中包含的数据进行操作。
参数抽象: 将数据类型作为参数处理。
2、抽象:抽出事物的本质特性, 暂不考虑其细节,使设计从具体实现方法中超脱。
§1. OOD准则
3、信息隐藏= 对象的封装
4、耦合:
交互耦合(interactive coupling):通过传递message发生要求降低参数个数和参数复杂性
减少objects发送\ 接收message的个数
 as loose as possible
继承耦合(inheritance coupling):
要求 Parent class IS_A child class  as high as possible
§1. OOD准则
一般-特殊内聚(general-particular cohesion):
High g-p cohesion  High inheritance coupling
5、内聚:
服务内聚(service cohesion):一个服务只完成一个功能。
类内聚(class cohesion):一个类只有一个用途,否则分解之。
6、可重用(Reusability)(详见§3)
尽量使用已有的类
设计新类时考虑将来的可重复使用性
§2. 启发式规则
1、设计结果清晰易懂,应做到:
①用词一致——按习惯用法命名。不同classes中相似的methods最好取同一名字。
②使用已有的协议。
③尽量减少message模式的数目。
④避免模糊定义。
2、一般-特殊结构的深度应适当(约100个classes,则设计7±2层)
§2. 启发式规则
3、设计简单的class(定义不超过一页纸或两屏)。应注意:
①避免过多attributes;
②能用简单的语句描述一个class的任务;
③ objects之间合作关系要简单;
④避免过多methods( 7个)。
问题:设计出大量的classes,使结构复杂度增加。
解决:划分主题,提高可理解性。
4、使用简单的protocol,减少message 中传递的 parameters
5、使用简单的method(CASE 可考虑用 inheritance替代)。
6、把设计变动减至最小。
1、概念:
知识重用(例如软件工程知识的重用)
方法和标准重用(例如OO方法和国家规定的软件开发规范的重用)
软件成分的重用
§3. 软件重用(Software Reuse)
知识工程
源码剪贴——无法溯源,无配置管理
Include ——修改后所有包含了此段代码的程序都须重新编译。
Inheritance ——无须改动原有代码
想象一下, 被改动之后……

重用软件成分有三个级别:
①代码重用:
§3. 软件重用
②设计重用——当移植系统时
③分析重用——当需求未变,而系统结构改变时
2、重用效果的衡量:
⑴额外代价: 创建可重用成分的专门投资 多花2 ~ 4倍时间测试以保证质量 构件库的建立与维护需要投资 以上投资将分摊到重用这些构件的新系统成本中。重用次数越多,分摊成本越少。
§3. 软件重用
记:Lt = Total length of code ( # of lines) Ln = Length of new code Lr = Length of reused code Et 、En、 Er are the corresponding efforts ( # of m-d)
⑵重用率(Reusability)与生产率(Productivity)
Productivity
Reusability =
开发代码的生产率
重用新代码的生产率
§3. 软件重用
⑶重用技术:指利用可重用的构件开发软件的技术,及开发可重用软件的技术。
①软件组合技术:
底层部件库法(Bottom-positional reuse) : 从可重用的代码部件库(reuse repository)中选用部件,组合成软件。
A:是,<Cr ,即重用比新开发效率高。
Q:是否R 越高P就越高?
上层组合法:完整程序的组合

最近更新

2024年广东省珠海市单招职业适应性测试模拟测.. 40页

2024年广东茂名农林科技职业学院单招职业倾向.. 39页

2024年广州体育职业技术学院单招职业技能测试.. 41页

2024年广州科技贸易职业学院单招职业技能考试.. 40页

2024年广西制造工程职业技术学院单招职业技能.. 42页

2024年广西工商职业技术学院单招职业技能测试.. 41页

2024年广西省柳州市单招职业适应性测试题库带.. 39页

2024年广西金融职业技术学院单招职业技能考试.. 40页

2024年延边职业技术学院单招职业技能考试模拟.. 40页

2024年德阳科贸职业学院单招职业适应性测试模.. 41页

2024年惠州城市职业学院单招职业技能考试题库.. 39页

2024年成都职业技术学院单招职业倾向性测试模.. 41页

2024年揭阳职业技术学院单招职业倾向性测试题.. 40页

2024年昆山登云科技职业学院单招综合素质考试.. 40页

2024年晋中职业技术学院单招职业倾向性测试模.. 40页

2024年桐城师范高等专科学校单招职业倾向性考.. 41页

2024年汉中职业技术学院单招职业倾向性考试模.. 41页

2024年江苏信息职业技术学院单招职业倾向性测.. 41页

2024年江苏城市职业学院单招职业倾向性考试题.. 41页

2024年江苏海事职业技术学院单招职业倾向性考.. 41页

2024年江苏财经职业技术学院单招职业适应性测.. 40页

2024年江西司法警官职业学院单招职业倾向性测.. 42页

2024年江西省萍乡市单招职业适应性考试题库新.. 39页

2025年广州卫生职业技术学院单招职业技能测试.. 64页

美团代运营业务委托合同 6页

新概念青少版2A各单元重点归纳 15页

九年级家长会课件PPT下载(初三2班) 25页

年产3000万片硝苯地平缓释片车间设计 40页

DB61∕T 926-2014 火灾高危单位消防安全管理与.. 45页

AQ 7011-2018《高温熔融金属吊运安全规程》 11页