子程序的内聚性
4/12/2012 10:14:03 AM
功能的内聚性
让一个子程序只执行一项任务。
顺序上的内聚性
是指在程序内包含有需要按特定顺序执行的操作,这些步骤需要共享数据,而且在全部执行完毕后才完成一项完整的功能。
通信上的内聚性
是指一个子程序中不同操作使用了同样的数据,但不存在其它任何其它联系。
临时的内聚性
是指含有一些因为需要同时执行才放到一起操作的子程序。
过程上的内聚性
是指一个子程序中的操作是按特定的顺序进行的,而这些操作并不需要为了除此之外的任何原因而彼此关联。
逻辑上的内聚性
是指若干操作被放入同一个子程序中,通过传入控制标志位选择执行其中的一项操作。
巧合的内聚性
是指子程序中的各个操作之间没有任何可以看到的关联。
总之,功能的内聚是最强也是最好的,而后3种内聚都是不可取的。优化时,都是通过将代码重新组织,将操作重新组织为具有功能内聚性的子程序,并在高层子程序中调用。