开发者社区> 问答> 正文

[@talishboy][¥20]如何实现高内聚低耦合的Java编码?

如何实现高内聚低耦合的Java编码?

展开
收起
黄二刀 2018-12-16 12:30:01 2268 0
4 条回答
写回答
取消 提交回答
  • 面向接口编程,多用抽象

    2019-07-17 23:22:11
    赞同 展开评论 打赏
  • 就跟公司部分的划分一样,怎么做到高效运作,就是要边界清楚,能解决的事情在内部完成,减少不必要的跨部门协助;
    设计上的话,要做好抽象,适合当前及可预期的业务发展;
    编码上就简单一点,明确类的左右,明确方法的输入输出,职责清晰。

    2019-07-17 23:22:11
    赞同 展开评论 打赏
  • 高内聚低耦合跟语言没有关心,写代码时,看新增一个功能,常常要改动很多模块,那么这个代码不是高内聚低耦合的

    2019-07-17 23:22:11
    赞同 展开评论 打赏
  • 前一个帐号wangccsy@126.com不知道怎么的就成了企业帐号,改不成个人。所以重新注册了一个个人帐号。老程序员。精通JAVA,C#,数据库,对软件开发过程和流程熟悉。考取系统分析师,项目管理师和系统架构设计师等软件资格考试认证。愿意和大家一起前进。

    分别描述的是模块内部特征,和模块外部引用关系。

    内聚就是一个模块内各个元素彼此结合的紧密程度,高内聚就是一个模块内各个元素彼此结合的紧密程度高。

    内聚是就其中任何一个模块的内部特征而言的。

    耦合是就多个模块组成的系统中各个模块的关联关系而言的。

    高内聚是说模块内部要高度聚合,低耦合是说模块与模块之间的藕合度要尽量低。前者是说模块内部的关系,后者是说模块与模块间的关系。

    起因:模块独立性指每个模块只完成系统要求的独立子功能,并且与其他模块的联系最少且接口简单,两个定性的度量标准――耦合性和内聚性。

     耦合性也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息。
    

    耦合性与内聚性是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。

    有个例子很容易明白:一个程序有50个函数,这个程序执行得非常好;然而一旦你修改其中一个函数,其他49个函数都需要做修改,这就是高耦合的后果。

    一旦你理解了它,你编写概要设计的时候设计类或者模块自然会考虑到“高内聚,低耦合”。

    2019-07-17 23:22:11
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载