oop - 'low in coupling and high in cohesion'是什么意思

标签 oop ooad

我在理解低耦合和高内聚这句话时遇到问题。我用谷歌搜索并阅读了很多相关内容,但仍然发现很难理解。

据我了解,高内聚意味着我们应该拥有专门执行特定功能的类。希望这是正确的吗?就像信用卡验证类一样,专门用于验证信用卡。

还是不明白低耦合意味着什么?

最佳答案

我相信的是:

内聚性是指模块/类的元素所属的程度,建议相关代码应该彼此靠近,因此我们应该争取高内聚性,将所有相关代码尽可能紧密地绑定(bind)在一起可能的。它与模块/类的元素有关。

耦合是指不同模块/类之间的依赖程度,建议所有模块尽可能独立,这就是低耦合的原因。它与不同模块/类之间的元素有关。

可视化整个图片会很有帮助:

enter image description here

截图取自Coursera .

关于oop - 'low in coupling and high in cohesion'是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14000762/

相关文章:

python - 具有相同接口(interface)的两个模块或具有相同接口(interface)的两个类的优点?

oop - 将多种数据格式从多个来源转换为单一格式的设计模式

python - 在两个相关类中使用继承的最佳方式是什么

python - 创建一个没有类定义的空白类实例

c# - 使接口(interface)扩展类

c++ - 派生类私有(private)方法被调用

java - 仅在 oop 中将方法的范围限制到另一个类

java - 使用嵌套对象处理父类和子类的继承

c# - "x.Groups = list"有效但 "x.Groups.Add(listItem)"抛出空引用异常?

oop - 帮助!邪恶的服务正在杀死我的对象