新闻动态
面向对象程序设计提高可复用性准则
https://www.sytm.net 发布日期:2014/1/26 14:46:54

来年刚好的程序设计风格不仅能够减少维护和扩充系统的开销,还有助于在新的项目中复用已有的程序代码,对保证软件质量起到至关重要的作用。良好的面向对象程序设计风格既包括传统的程序设计风格准则,同时,也包括为适应面向对象所特有的概念而必须遵循的一些新准则。

面向对象方法的一个重要目标 就是提高软件的可复用性。软件复用有多个层次,在编码阶段主要设计代码复用问题。一般来说,代码复用有两种:一种是本项目内的代码复用,即内部复用。另一种是在新项目中复用就项目的代码,即外部复用。内部复用主要是找出设计中相同或相似的部分,然后利用继承机制共享它们。为了做到外部复用,则必须有长远的眼光,需要反复精心设计。尽管实现外部复用比实现内部复用需要考虑的因素更多,但是实现这两类复用的程序设计准则是相同的,主要有如下7条准则。

(1)提高方法的内聚度。对象提供的一个方法,应该只完成单个功能,如果某个方法设计多个不相干的功能,则应该把它分解成几个更小的方法。

(2)减小方法的规模。如果某一方法的规模过大,通常其代码长度会比较长。当一个方法的代码长度超过一页纸时就表示其规模可能太大了,应该把它分解成几个较小的方法。

(3)保持方法的一致性。保持方法的一致性,有助于实现代码的复用性,一般来说,功能相似的方法应该有一致的名字、参数特征、返回值类型,有助于实现代码的复用性,一般来说,功能相似的方法应该有一致的名字、参数特征、返回值类型、使用条件和出错条件等。

(4)把策略和实现分开。从所完成的功能看,有两种不同类型的方法,一类方法负责做出决策,提供变量,并且管理全局资源,成为策略方法。另一类方法负责完成具体的操作,但却不做出是否执行这个操作的决定,也不知道为什么执行这个操作,成为实现方法。为了提高可复用性,在程序设计时不要把策略和实现放在同一个方法中,应该把算法的核心部分放在一个单独的实现方法中,并且从策略方法中提取出具体的参数,作为调用实现方法的变量。

(5)全面覆盖。如果输入条件的各种组合都可能出现,则应该对所有组合写出方法,而不能仅仅针对当前用到的组合情况写方法。例如,如果在当前应用中需要写一个方法,以获得某数据库中表中第一个元素,则至少还应该为获得表中最后一个元素编写一个方法。此外,一个方法不应该只能处理正常值,还必须对空值、极限值以及界外值等异常情况作出有响应。

(6)尽量不适用全局信息。应该尽量降低方法与外界的耦合成都,不适用全局信息是降低耦合程度的一项主要措施。

(7)尽量利用继承机制。在面向对象程序中,使用继承机制是实现共享和提高复用程度的主要途径。


更多阅读
返回列表
© 2010 TianMei Technology All rights reserved. ICP:辽B2-20150138辽公网安备 21010202000010号  目录概览