什么是高内聚低耦合,如何理解高内聚低耦合
发布:小编
什么是高内聚低耦合
高耦合低内聚:块间联系高,块内联系低。
其中内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事。它描述的是模块内的功能联系。
而耦合是软件结构中各模块之间相互连接的一种度量,耦合强弱取决于模块间接口的复杂程度、进入或访问一个模块的点以及通过接口的数据。
高内聚低耦合,是软件工程中的概念,是判断设计好坏的标准,主要是面向对象的设计,主要是看类的内聚性是否高,耦合度是否低。
如何理解高内聚低耦合
高内聚,低耦合在软件工程里有,主要是说模快之间和模块内部之间的关系紧密程度
高内聚就是提高模快内部的关联程度,低耦合当然就是降低模快之间的关联程度
耦合性比较高的话,模块代码不易分离,是不好的编程模式
内聚是越高越好,内聚个人认为是只是实现一个功能,不是很多的功能
在软件设计中应遵循高内聚低耦合的原则
高内聚低耦合是软件设计的一个基本原则,说的是在程序的各各模块中,尽量让每个模块独立,相关的处理尽量在单个模块中完成,就是俗话说的:该干嘛干吗去! 优点:能提降低各模块的之间的联系,减少“牵一发而动全身”的几率,提高开发效率,降低升级维护成本,也便于进行 单元测试 ,提高软件质量。
高内聚低耦合是什么的基本原则
高内聚,是指让一个类或者一个方法让他专注去做一件事情。低耦合:这个又要求对象,类之间减少耦合性,更通俗的说比如你一个类的方法引用了很多的别的类,而你是直接new出来的,这样就会出现,你修改某个类之后,这个方法就会出现异常错误。
什么是高内聚低耦合
高内聚就是说相关度比较高的部分尽可能的集中,不要分散
低耦合就是说两个相关的模块尽可以能把依赖的部分降低到最小,不要让两个系统产生强依赖
可能那么说,有点官方,下面我就举例子说明:
所谓的高内聚就是把功能相关的模块集合在一起,举例:
用户模块,就可以把用户的相关内容放在一起,比如用户个人信息,用户一些收藏等。
如果把新闻相关的内容放到用户模块里面,首先新闻相关得内容和用户模块没有多大得关联性,这样得内聚就不是高聚合。
在举个最实际的例子:211和专科学校他们招生,211招的就是高尖子生,他们得共性就是学生里面的顶尖的一批,专科招的就是学生里面学习能力相对较弱的一批,如果把专科生放到211里面去,那不符合实际,毕竟专科生和211没有多大的关联,符合不了211。从这个招生得这种情况就可以理解为:高内聚(把能力内容相关的放在一起)。
所谓得低耦合就是每个模块之间的关联性将到可控范围的最低,举例:
有个购物车系统和商品是相关的,当加入购物车的时候,势必需要去执行商品相关的操作,这就是耦合,那所谓的低耦合,就是购物车降低对商品这块的联系。
举个现实中的例子:
你找了一个女朋友,那你们之间就有了联系,这就是耦合,然后呢,你们同居了,你们之间联系更加密切了,这样耦合就高了,然后突然有一天,你女朋友说要回老家了,你俩不同居了,你们的联系呢也少下去了,但是你俩还是男女朋友关系,只不过没有同居的时候联系那样亲密。这就是所谓的:低耦合
高内聚,低耦合,他们是相关的,一旦内聚高了,耦合也必然会高,一旦耦合低了,那内聚也必然会降低。因为内聚一旦高了,功能也越来越单一化了,对外模块的需求也变得高了(例:情况一:你现在只学习,啥都不干,那你吃饭,住宿,卫生等等都是需要甲帮你操办,相对于你而言,你是专一化的学习,啥都不用考虑,但是你对甲的依赖就很高,这就是内聚高了,耦合也就高了。情况二:如果你现在不仅要学习,而且住宿,吃饭,卫生都要自己去解决,那相对于甲而言,他的出现与否和你没有多大的关联,他就真成了路人甲,但是对你而言你需要做的东西就多了,那你的能力也就不在是单一化了,就会有很多能力糅合在你身上,但是你和甲的关联就很少甚至是几乎没有,这就是所谓的:耦合低了,内聚也就低了)因此,高内聚,低耦合是相关的,我们能做到得就是找到最合适得一个 内聚和耦合的一个点。因此没有绝对的高内聚低耦合
以上就是关于什么是高内聚低耦合,如何理解高内聚低耦合的全部内容,以及什么是高内聚低耦合的相关内容,希望能够帮到您。
版权声明:本文来自用户投稿,不代表【推酷网】立场,本平台所发表的文章、图片属于原权利人所有,因客观原因,或会存在不当使用的情况,非恶意侵犯原权利人相关权益,敬请相关权利人谅解并与我们联系(邮箱:350149276@qq.com)我们将及时处理,共同维护良好的网络创作环境。
大家都在看
-
敕勒歌古诗意思,敕勒歌古诗全文意思二年级
综合百科本文目录1.敕勒歌古诗全文意思二年级2.敕勒歌的意思3.敕勒歌的意思和解释4.敕勒歌这首诗的意思全解拼音敕勒歌古诗全文意思二年级敕勒歌古诗全文意思辽阔的敕勒大平原就在阴山脚下。天空像个巨大的帐篷,笼盖着整个原野。蔚蓝的天空一望无际,碧绿的原野茫茫不尽。一阵风吹过,牧草低伏,露出一
-
360n7pro怎么清理内存,手机内存不足如何清理
综合百科360n7pro怎么清理内存1、首先在手机桌面找到【360卫士】图标点击打开。2、360卫士可以一键清理缓存垃圾、内存和广告垃圾、无用安装包,等待扫描完成后,点击清理,它就会帮助我们清理一些无用的手机垃圾。3、我们还可以进行深度清理,发现我们手机里面还有顽固的垃圾。4、等待扫描完
-
网贷逾期了会怎么样,网贷逾期不还会有什么后果
综合百科本文目录1.网贷逾期不还会有什么后果2.网贷逾期一直不还最终后果会怎样3.网贷不还会有什么后果4.网贷还不上会有什么后果网贷逾期不还会有什么后果你好,关于这个问题简单说一下:一,网贷属于不良网贷的主要表现有以下几个方面:1,高额利息:不良网贷通常会收取高额的借款利息和费用,超过法
-
怎么样让孩子快乐学习,如何让孩子更快乐
综合百科本文目录1.如何让孩子更快乐2.对于学校来说,满足所有学生发展的需求是必要的英语3.如何让孩子感到快乐4.怎样让孩子爱上学习如何让孩子更快乐快乐教育并不是什么都不教,顺其自然就好,那样只能让孩子偏离正确的轨道。没有办法更好的学习,真正的快乐教育应该是具备以下几个要素。1、 培养孩
-
益生菌保藏方法
综合百科益生菌保藏方法1、低温保存建议放入冰箱保鲜层。益生菌的活性会随着温度升高而提升并进入发酵过程,长时间常温保存容易造成产品口味变化。当温度超过60℃时,益生菌会进入衰亡阶段。因此,益生菌产品最好是在冷藏条件下取出后直接食用,避免高温加热。2、避光保存避免在温度太高或者直射光下保存,
-
老油的制作方法,干锅老油的制作方法
综合百科本文目录1.干锅老油的制作方法2.什么是老油条3.火锅老油制作配方4.烤鱼的老油做法有哪些好吃干锅老油的制作方法1、材料:辣椒750G、豆瓣1000G、泡椒茸500G、大蒜瓣200G、 葱段350G、姜片400G、香料(小茴香12G香叶15G白蔻15G桂皮12G丁香6G良姜10G
-
苹果手机怎么样删除app
综合百科苹果手机怎么样删除app设置方法:在iOS13操作系统下,打开手机,找到需要卸载的软件,长按软件图标,之后点击“x”按钮即可将软件删除,ios13也可以在设置页面卸载不常用APP,打开手机,进入系统设置页面,点击“通用”――“iPhone储存空间”――“卸载未使用的应用”,等待卸
-
仙人掌为什么不怕干旱
综合百科仙人掌为什么不怕干旱一、根系庞大仙人掌的根系非常的发达,不但能够深入地底,而且能够向周围扩散生长。有的品种的根系能够长到几十米长,深入地底以便获取地下水。另外,它的根系比较粗壮,扎根也非常的牢固,能够保证不会因为根部的问题吸收不到水分。二、针型叶子它的叶子是针型的,这是因为它为了
-
个人贷款保证保险是什么意思,大地个人贷款保证保险是什么意思
综合百科本文目录1.大地个人贷款保证保险是什么意思2.贷款保证保险是什么意思3.贷款的保险费是怎么回事4.大地个人贷款保证保险是什么意思大地个人贷款保证保险是什么意思您好,百度网友,顾名思义,个人贷款保证保险是当借款人不能偿还贷款时,由保险公司承担偿还责任的一种保险。个人贷款保证保险的投
-
有关书的名言语录,关于书的名言名句大全
综合百科本文目录1.关于书的名言名句大全2.含有书的名言警句最短3.书籍与未来的名言有哪些4.关于书的名言关于书的名言名句大全关于书的名言名句如下:1、读万卷书,行万里路。——刘彝2、黑发不知勤学早,白首方悔读书迟。——颜真卿3、书卷多情似故人,晨昏忧乐每相亲。——于谦4、书犹药也,善读
-
ebel是什么牌子的手表,ebel是什么牌子的手表
综合百科本文目录1.ebel是什么牌子的手表2.ebel是什么牌子的手表价格3.依波路手表售后服务电话号码4.玉宝手表怎么样档次ebel是什么牌子的手表瑞士品牌的手表。中文名为依柏(bo)表,好多大商场都有专柜,质量很好,很有名气。跟国产的依波表不是一个产地,两个不同的品牌。ebel是什
-
bch和btc区别,bch是什么币种
综合百科bch和btc区别比特币(BTC)在2017年8月1日发生分差,在一个“硬叉”的事件中,诞生了一种被称为比特币现金(BCH)的新数字货币。由于版本切换,比特币区块链被分叉至两条独立的区块链。在分叉前拥有比特币的所有人都有权获得相同数量的“比特币现金”代币,类似于股票中的股息派发。