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就越高?
上层组合法:完整程序的组合

最近更新

2023年山东服装职业学院单招职业倾向性测试题.. 40页

2026年假期防溺水学生作文 9页

2023年山东电子职业技术学院单招职业技能考试.. 40页

2023年山东省临沂市单招职业倾向性考试题库带.. 39页

2023年山东省莱芜市单招职业倾向性考试题库完.. 40页

2026年假如我被克隆了想象作文 5页

2023年平凉职业技术学院单招职业技能考试题库.. 41页

2023年广东省惠州市单招职业倾向性考试题库附.. 41页

2023年广元中核职业技术学院单招职业技能考试.. 39页

2023年广西建设职业技术学院单招职业技能考试.. 41页

2023年广西经济职业学院单招职业技能考试题库.. 40页

2026年倡导环保的建议书 6页

2023年抚顺师范高等专科学校单招职业技能考试.. 40页

2023年晋城职业技术学院单招职业技能考试题库.. 42页

2023年桂林生命与健康职业技术学院单招职业技.. 39页

2023年江苏省宿迁市单招职业适应性考试题库带.. 40页

2023年江西电力职业技术学院单招职业技能考试.. 42页

2023年江西科技学院单招职业技能考试题库含答.. 40页

2023年河北工艺美术职业学院单招职业技能考试.. 40页

2023年河北省衡水市单招职业适应性考试题库推.. 41页

2026年保险公司年会演讲词 8页

2023年浙江舟山群岛新区旅游与健康职业学院单.. 40页

2023年湖南劳动人事职业学院单招职业技能考试.. 40页

2023年甘肃省平凉地区单招职业倾向性考试题库.. 40页

2023年石家庄医学高等专科学校单招职业技能考.. 40页

2023年福建省泉州市单招职业适应性考试题库最.. 40页

2023年苏州农业职业技术学院单招职业技能考试.. 40页

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

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

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