美文网首页
高内聚体现在哪里?

高内聚体现在哪里?

作者: 王小贱_ww | 来源:发表于2017-09-24 11:35 被阅读19次

内聚性:将功能类似、相关的API组合在一起的程度。

前两天公司培训CMMI认证,有一个地方和编程差不多,在公司中,如何评估这个员工的效率?这里就要引入一个量化标准的概念。量化的标准体现在编程里就是拆分的最小粒度。

低内聚的表现在代码散落,高内聚应该有以下3个表现:可读性、可复用和可维护。

public class AppManager {


    public void saveUserInfor(String name) {
           //进行存储操作
    }


    public void saveFile() {

    }

    public void showToast() {
        
    }

}

1.如果我们刚接手一个项目,看到以上的代码,在一个类中有很多方法,这些方法还没有注释
2.我们不知道有什么方法,当我们需要一个方法时,我们就回去自己去写一个(没有找到),还会吐槽这公司怎么连这个方法也没有= =
3.这就会造成代码越来越糟
4.我们应该把AppManager 拆分成更多的类 ,例如 关于文件的操作,我们应该写一个FileUtilsl类。

如果在saveUserInfor()方法中,我们有个一个新的参数,我们是不是要先找到调用它的LoginActivity类,然后在回调中修改方法。

class LoginActivity {
    //登陆成功

SignHandler.onSignIn(String,listener);
}

      class   SignHandler {

    public  static void onSignIn(String response, ISignListener listener) {
        //进行操作和修改
    }
}

interface ISignListener {
    void onSignInSuccess();
}

这样我们在修改时,改动SignHandler就行了,也不用去找对应的Activity了。
总结一下,耦合度和内聚有没有关系呢?答案是有的,当我们低耦合的时候(上面登陆这个例子),都拆分开之后,自然就高内聚了,可读、可复用和可维护。要想高内聚,低耦合是必须的。

相关文章

  • 高内聚体现在哪里?

    内聚性:将功能类似、相关的API组合在一起的程度。 前两天公司培训CMMI认证,有一个地方和编程差不多,在公司中,...

  • [JAVA] Java面向对象三大特征:封装、继承、多态

    高内聚和低耦合 面向对象的最终目的是要构建强健、安全、高效的项目,也就是要实现项目的高内聚和低耦合: 高内聚:把该...

  • 高内聚低耦合

    高内聚: 高内聚是另外一个评判软件设计质量的标准。内聚更为专业的说法叫做功能内聚,是对系统中元素职责的相关性和集中...

  • 测试开发学习Day03

    面向对象原则:高内聚,低耦合。多聚合,少继承。 【高内聚、低耦合】内聚:每个模块尽可能独立完成自己的功能,不依赖于...

  • 如何理解高内聚低耦合?什么是依赖倒置、控制反转、依赖注入?

    软件工程里面,有高内聚低耦合的概念。 那么,什么是内聚?什么是耦合呢? 内聚 所谓内聚,就是指一个功能模块内所有内...

  • 4.C# 高内聚低耦合

    高内聚低耦合是判断软件设计好坏的标准。 内聚 内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事...

  • diango创建的一个简单的基本流程

    高内聚,低耦合 高内聚:一个模块内部一个功能。 低耦合:每个模块各司其职,尽量零关联。 创建django项目 1、...

  • 2021-08-31 IO流(装饰和继承的区别)

    继承结构组合结构高内聚,低耦合

  • 高内聚,低耦合

    概念 耦合性: 也称块间联系。指的软件系统结构中各模块间相互凉席紧密程度的一种度量。模块之间联系越紧密,其耦合性就...

  • 高内聚低耦合

    内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事。它描述的是模块内的功能联系; 耦合是软件结构...

网友评论

      本文标题:高内聚体现在哪里?

      本文链接:https://www.haomeiwen.com/subject/xokkextx.html