软件工程(第3版)第9章 人民邮电出版社

软件工程(第3版)第9章 人民邮电出版社

ID:19890002

大小:472.00 KB

页数:98页

时间:2018-10-07

软件工程(第3版)第9章 人民邮电出版社_第1页
软件工程(第3版)第9章 人民邮电出版社_第2页
软件工程(第3版)第9章 人民邮电出版社_第3页
软件工程(第3版)第9章 人民邮电出版社_第4页
软件工程(第3版)第9章 人民邮电出版社_第5页
资源描述:

《软件工程(第3版)第9章 人民邮电出版社》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第9章面向对象实现面向对象实现主要包括两项工作:第一项工作是把面向对象设计结果,翻译成用某种程序设计语言书写的面向对象程序;第二项工作是测试并调试面向对象的程序。面向对象程序的质量基本上由面向对象设计的质量决定,但是,所采用的程序设计语言的特点和程序设计风格也将对程序的可靠性、可重用性和可维护性产生深远的影响。目前,软件测试仍然是保证软件可靠性的主要措施,对于面向对象的软件来说,情况也是如此。面向对象测试的目标,也是用尽可能低的测试成本和尽可能少的测试方案,发现尽可能多的错误。但是,面向对象程序中特有的

2、封装、继承和多态等机制,也给面向对象测试带来一些新特点,增加了测试和调试的难度。我们必须通过实践,努力探索适合于面向对象软件的更好的测试方法。程序设计语言9.1程序设计风格9.2测试策略9.3设计测试用例9.4小结9.59.1程序设计语言9.1.1面向对象语言的优点选择编程语言的关键因素,是语言的一致的表达能力、可重用性及可维护性。从面向对象观点看来,能够更完整、更准确地表达问题域语义的面向对象语言的语法是非常重要的,因为这会带来下述几个重要优点。1.一致的表示方法2.可重用性3.可维护性9.1.

3、2面向对象语言的技术特点一般说来,纯面向对象语言着重支持面向对象方法研究和快速原型的实现,而混合型面向对象语言的目标则是提高运行速度和使传统程序员容易接受面向对象思想。成熟的面向对象语文通常都提供丰富的类库和强有力的开发环境。下面介绍在选择面向对象语言时应该着重考察的一些技术特点。1.支持类与对象概念的机制2.实现整体—部分结构的机制3.实现一般—特殊结构的机制4.实现属性和服务的机制5.类型检查6.类库7.效率8.持久保存对象9.参数化类10.开发环境9.1.3选择面向对象语言开

4、发人员在选择面向对象语言时,还应该着重考虑以下一些实际因素。1.将来能否占主导地位2.可重用性3.类库和开发环境4.其他因素9.2程序设计风格良好的程序设计风格对面向对象实现来说尤其重要,不仅能明显减少维护或扩充的开销,而且有助于在新项目中重用已有的程序代码。良好的面向对象程序设计风格,既包括传统的程序设计风格准则,也包括为适应面向对象方法所特有的概念(例如,继承性)而必须遵循的一些新准则。9.2.1提高可重用性面向对象方法的一个主要目标,就是提高软件的可重用性。软件重用有多个层次,在编码阶

5、段主要考虑代码重用的问题。一般说来,代码重用有两种:一种是本项目内的代码重用,另一种是新项目重用旧项目的代码。内部重用主要是找出设计中相同或相似的部分,然后利用继承机制共享它们。为做到外部重用(即一个项目重用另一项目的代码),必须有长远眼光,需要反复考虑精心设计。虽然为实现外部重用所需要考虑的面,比为实现内部重用而需要考虑的面更广,但是,有助于实现这两类重用的程序设计准则却是相同的。下面讲述主要的准则。1.提高方法的内聚2.减小方法的规模3.保持方法的一致性4.把策略与实现分开为提高可重用性,在编

6、程时不要把策略和实现放在同一个方法中,应该把算法的核心部分放在一个单独的具体实现方法中。为此需要从策略方法中提取出具体参数,作为调用实现方法的变元。5.全面覆盖6.尽量不使用全局信息7.利用继承机制在面向对象程序中,使用继承机制是实现共享和提高重用程度的主要途径。(1)调用子过程(2)分解因子(3)使用委托(4)把代码封装在类中图9.1通过调用公用方法实现代码重用图9.2通过因子分解实现代码重用9.2.2提高可扩充性上一小节所述的提高可重用性的准则,也能提高程序的可扩充性。此外,下列的

7、面向对象程序设计准则也有助于提高可扩充性。1.封装实现策略2.不要用一个方法遍历多条关联链3.避免使用多分支语句4.精心确定公有方法9.2.3提高健壮性程序员在编写实现方法的代码时,既应该考虑效率,也应该考虑健壮性。通常需要在健壮性与效率之间做出适当的折衷。必须认识到,对于任何一个实用软件来说,健壮性都是不可忽略的质量指标。为提高健壮性应该遵守以下几条准则。1.预防用户的操作错误2.检查参数的合法性3.不要预先确定限制条件4.先测试后优化9.3测试策略测试计算机软件的经典策略是,从“小型

8、测试”开始,逐步过渡到“大型测试”,用软件测试的专业术语来说,就是从单元测试开始,逐步进入集成测试,最后进行确认测试和系统测试。对于传统的软件系统来说,单元测试集中测试最小的可编译的程序单元(过程模块),一旦把这些单元都测试完之后,就把它们集成到程序结构中去,与此同时应该进行一系列的回归测试,以发现模块接口错误和新单元加入到程序中所带来的副作用,最后,把系统作为一个整体来测试,以发现软件需求中的错误。测试面向对象

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

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

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