现在的位置: 首页 > 综合 > 正文

Java程序设计关于低耦合与高内聚理念

2013年08月13日 ⁄ 综合 ⁄ 共 822字 ⁄ 字号 评论关闭

 熟悉Java的人都知道Java程序设计时,为了避免程序的冗杂,减少各个类之间的依耐性,经常使用低耦合和高内聚的设计理念。

      所谓耦合是指在一个软件结构内不同模块之间互连程度的度量,

       而低耦合就是指在设计一个软件时,作为一个完整的软件系统,对于各种模块与模块之间应尽可能的是其独立的存在,让每个模块尽可能的独立完成其特定的功能。

       如果某两个模块间的关系比较复杂的话,最好首先考虑进一步的模块划分。这样有利于修改和组合。

     所谓内聚是指一个模块内各个元素彼此结合的紧密程度。而高内聚就是指在一个模块的内部,应该尽可能的让每个元素都紧密的相连。

        也就是充分利用每一个元素的功能,各施所能,以最终实现某个功能。
      如果某个元素与该模块的关系比较疏松的话,可能该模块的结构还不够完善,或者是该元素是多余的。

 

     例如以下有四个类,分别有两种设计方法 ,如图:

    图一:           在该图中    各个类之间呈网状引用结构,如果写代码时也是这种结构,那么不仅会使代码很难理解,而且不容易使读者理解,更重要的时,无法继续在上面扩展代码,即你更改某一个类的元素时,同时也会影响到其他的类,因为他们之间的依耐性很高,所谓的“牵一发而动全身”就是指的这个意思。

 

 

 

    图二:

 

 

 

 

 

    

 

  在该图中,我们可以看到类C,B,A都只是为D所用,所以他们相互之间是独立的,在我们修改代码时:比如我们修改类C中的代码,那就不会影响到类B和类A,这样,只要采用这种星状结构,不论我们的软件有多么的庞大,我们在修缮代码时也不会有太多的麻烦。

   内聚耦合,包含了横向和纵向的关系。功能内聚和数据耦合,是我们需要达成的目标。横向的内聚和耦合,通常体现在系统的各个模块、类之间的关系,而纵向的耦合,体现在系统的各个层次之间的关系。

        高内聚和低耦合是软件工程设计的一种原则,是写代码时要遵循的一种规范

抱歉!评论已关闭.