软件工程导论class18面向对象实现.ppt

软件工程导论class18面向对象实现.ppt

ID:48151053

大小:273.50 KB

页数:45页

时间:2020-01-16

软件工程导论class18面向对象实现.ppt_第1页
软件工程导论class18面向对象实现.ppt_第2页
软件工程导论class18面向对象实现.ppt_第3页
软件工程导论class18面向对象实现.ppt_第4页
软件工程导论class18面向对象实现.ppt_第5页
资源描述:

《软件工程导论class18面向对象实现.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、软件工程导论 第18课第12章面向对象实现第12章面向对象实现2项主要工作:(1)把面向对象设计结果翻译成用某种程序语言书写的面向对象程序,(2)测试并调试面向对象程序采用的语言的特点和程序设计风格影响程序的可靠性、可重用性和维护封装、继承、多态给测试带来新特点,要进一步探索更有效的测试方法12.1程序设计语言面向对象设计的结果可以用面向对象语言,也可以用非面向对象语言实现。非面向对象语言实现困难比较多。语言选择要考虑功能的强大,便于实现面向对象概念,可重用性和可维护性好的语言会有以下优点:12.1程序设计语言1一致的表示方法一致的表示方法应该从问题域到OO

2、A,OOD,OOP始终稳定不变。有利于在软件开发过程中始终使用统一的概念,有利于维护人理解软件的各种配置。2可重用性OOA,OOD,OOP的结果都可以重用。12.1程序设计语言3可维护性实际情况是:维护人员最终面对的只有源程序本身,没有文档。在选择编程语言时,要选择能最好地表达问题域语义的,便于维护人员理解程序和维护最好选用面向对象语言12.1.2面向对象语言的技术特点面向对象语言20世纪50年代LISP语言动态联编20世纪60年代SIMULA语言类,继承20世纪70年代Modula_2,Ada抽象20世纪80年代Smalltalk,Eiffel过程语言上增加

3、面向对象机制C++面向对象语言的技术特点如下:1支持类与对象概念的机制用户动态创建对象,用指针引用动态创建的对象。系统必须进行动态内存管理,分配和释放内存。不释放会用尽内存。自动回收,有时系统回收不太好。C++采用析构函数的方式释放内存。2实现整体-部分(聚集)结构的机制2种方法实现整体-部分结构使用指针的方式,和独立的关联方式3实现一般特殊结构的机制(泛化)实现继承机制,解决名字冲突的机制。名字冲突就是重名问题,尽是避免名字冲突4实现属性和服务的机制实现属性的机制考虑问题:支持实例连接的机制,属性的可见性控制,对属性值的约束。服务考虑的因素:支持消息连接的机

4、制,控制服务可见性的机制,动态联编。动态联编:系统在运行过程中,当需要执行一个特定服务的时候,选择实现该服务的适当算法。虚函数是动态联编。5类型检查弱类型:仅要求每个变量或属性隶属于一个对象强类型:语法规定每个变量或属性必须准确地隶属于某个特定的类Smalltalk是无类型语言,C++是强类型强类型的优点:有利于在编译时发现错误;增加了优化的可能性。6类库大多数面向对象语言都提供实用的类库。编译系统提供类库。类库增加重用性类库中包含通用的数据结构类,把这些类称为包容类关联类,接口类,用户界面类7效率面向对象的程序效率并不低。类库中的算法和数据结构更先进,代码更

5、精巧。类的动态联编查找方法经过优化,速度快。8持久保存对象保存数据的方法,保存数据用于传递数据,恢复数据。人工进行数据保存,保存数据的类9参数化类一些软件元素,功能相同,处理对象不同。参数化类就是使用一个或多个类型去参数化一个类的机制。程序员先定义一个参数化的类模板,然后把数据类型作为参数传递进去,从而把这个模板应用在不同的应用程序中。Effel语言中有参数化类,C++提供了类模板。10开发环境开发环境包括的基本软件工具:编辑程序,编译程序,解释程序、浏览工具、调试器。编译程序代码效率比解释程序高编译先翻译成中间语言程序,再翻译成目标代码传统的系统构造工具(例

6、如UNIX的make)落后了。例:C++的VisualStudio12.1.3选择面向对象语言开发人员选择面向对象语言时考虑的因素:1将来能否占主导地位2可重用性3类库和开发环境考虑类库中具有哪些有价值的类,开发环境具有方便的编辑工具和浏览工具4其他因素培训、技术支持,开发工具、开发平台、发行平台、对机器性能和内存的要求,集成已有软件的容易程度。12.2程序设计风格良好的程序设计风格有利于维护、扩充,重用。为适应面向对象方法所特有的概念而必须遵循的一些新准则。可重用性,可扩展性12.2.1提高可重用性在编码阶段主要是代码重用2种代码重用:内部重用即本项目内的代

7、码重用外部重用即新项目重用旧项目的代码内部重用:找出相似部分,用继承共享它们外部重用:要精心设计下面是实现重用的准则:1提高方法的内聚一个方法应该只完成单个功能,如果一个方法涉及多个功能,要进行分解。2减小方法的规模如果某个方法过大,应该把它分解成几个小方法。3保持方法的一致性功能相似的方法有一致的名字、参数特征、返回值类型、使用条件、出错条件等。4把策略与实现分开两种方法做出决策,提供变元,并且管理全局资源的方法称为策略方法。完成具体操作的方法称为实现方法。策略方法检查系统运行状态,处理出错情况。实现方法完成特定处理、实现算法为提高可重用性,不要把策略和实现

8、放在同一个方法中,算法的核心部分放在实

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。