gpt4 book ai didi

oop - 低耦合和高内聚不是相互依赖的吗?

转载 作者:行者123 更新时间:2023-12-03 17:18:21 28 4
gpt4 key购买 nike

我应该编写相同代码的两个版本。一个具有低耦合和高内聚,另一个仍然具有低耦合但这次具有低内聚。我真的不明白有什么区别?我怎样才能有低耦合和低内聚?它们似乎如此相关,以至于这是不可能的。

有人可以解释一下吗?也许举个例子?
谢谢!

最佳答案

简而言之:

软件工程中的凝聚力,就像在现实生活中一样,是指组成一个整体(在我们的例子中假设一个类)的元素有多少可以说它们实际上属于一起。因此,它是衡量由软件模块的源代码表达的每条功能的关联程度。

从 OO 角度看待内聚的一种方法是类中的方法是否使用任何私有(private)属性。

现在讨论比这更大,但高内聚(或内聚的最佳类型 - 功能内聚)是模块的各个部分被分组,因为它们都有助于模块的单个明确定义的任务。

简单来说,耦合就是一个组件(再次,想象一个类,虽然不一定)对另一个组件的内部工作或内部元素了解多少,即它对另一个组件有多少了解。

松散耦合是一种互连系统或网络中的组件的方法,以便这些组件在实际可能的最小范围内相互依赖……

长:

I wrote a blog post about this.它通过示例等详细讨论了所有这些。它还解释了为什么应该遵循这些原则的好处。我认为它可以帮助...

关于oop - 低耦合和高内聚不是相互依赖的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29765088/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com