文档介绍:第第99章章面向对象实现面向对象实现退出退出面向对象实现主要包括两项工作:第一项工作是把面向对象设计结果,翻译成用某种程序设计语言书写的面向对象程序;第二项工作是测试并调试面向对象的程序。面向对象程序的质量基本上由面向对象设计的质量决定,但是,所采用的程序设计语言的特点和程序设计风格也将对程序的可靠性、可重用性和可维护性产生深远的影响。目前,软件测试仍然是保证软件可靠性的主要措施,对于面向对象的软件来说,情况也是如此。面向对象测试的目标,也是用尽可能低的测试成本和尽可能少的测试方案,发现尽可能多的错误。但是,面向对象程序中特有的封装、继承和多态等机制,也给面向对象测试带来一些新特点,增加了测试和调试的难度。我们必须通过实践,努力探索适合于面向对象软件的更好的测试方法。 程序设计语言程序设计语言 面向对象语言的优点选择编程语言的关键因素,是语言的一致的表达能力、可重用性及可维护性。从面向对象观点看来,能够更完整、更准确地表达问题域语义的面向对象语言的语法是非常重要的,因为这会带来下述几个重要优点。 1. 一致的表示方法 2. 可重用性 3. 可维护性 面向对象语言的技术特点一般说来,纯面向对象语言着重支持面向对象方法研究和快速原型的实现,而混合型面向对象语言的目标则是提高运行速度和使传统程序员容易接受面向对象思想。成熟的面向对象语文通常都提供丰富的类库和强有力的开发环境。下面介绍在选择面向对象语言时应该着重考察的一些技术特点。1. 支持类与对象概念的机制2. 实现整体—部分结构的机制3. 实现一般—特殊结构的机制4. 实现属性和服务的机制5. 类型检查6. 类库7. 效率8. 持久保存对象9. 参数化类10. 开发环境 选择面向对象语言开发人员在选择面向对象语言时,还应该着重考虑以下一些实际因素。 1. 将来能否占主导地位 2. 可重用性 3. 类库和开发环境 4. 程序设计风格程序设计风格良好的程序设计风格对面向对象实现来说尤其重要,不仅能明显减少维护或扩充的开销,而且有助于在新项目中重用已有的程序代码。良好的面向对象程序设计风格,既包括传统的程序设计风格准则,也包括为适应面向对象方法所特有的概念(例如,继承性)而必须遵循的一些新准则。 提高可重用性面向对象方法的一个主要目标,就是提高软件的可重用性。软件重用有多个层次,在编码阶段主要考虑代码重用的问题。一般说来,代码重用有两种:一种是本项目内的代码重用,另一种是新项目重用旧项目的代码。内部重用主要是找出设计中相同或相似的部分,然后利用继承机制共享它们。为做到外部重用(即一个项目重用另一项目的代码),必须有长远眼光,需要反复考虑精心设计。虽然为实现外部重用所需要考虑的面,比为实现内部重用而需要考虑的面更广,但是,有助于实现这两类重用的程序设计准则却是相同的。下面讲述主要的准则。 1. 提高方法的内聚 2. 减小方法的规模 3. 保持方法的一致性 4. 把策略与实现分开为提高可重用性,在编程时不要把策略和实现放在同一个方法中,应该把算法的核心部分放在一个单独的具体实现方法中。为此需要从策略方法中提取出具体参数,作为调用实现方法的变元。