什么时候我们应该更喜欢松耦合上的硬耦合?

时间:2017-08-14 20:44:58

标签: oop software-design loose-coupling

随着关于松散耦合(有理由)的所有宣传以及我所阅读的所有信息都很容易被所有人所痴迷,以至于变得虔诚于此。我一直在想,什么时候硬耦合比松散耦合更有利?什么时候对象是硬耦合的候选对象?我认为根据情况可以减少一些复杂性。

一些例子将不胜感激。

1 个答案:

答案 0 :(得分:1)

硬/紧耦合的优点

有些情况下,紧耦合可能会让你感觉更好。通常与开发速度和程序的复杂性有关。

非常小的项目/概念证明

在短期内,松耦合会增加开发时间。从理论上讲,对于每个服务/客户端对,都需要为其创建额外的接口。硬耦合甚至不担心依赖性。根据我的经验,在学校的许多项目都很小,紧密耦合的课程是可以的。特别是在您转入作业并且永远不必再次触摸它的情况下。

保持简单

通常松散耦合的系统包含更多组件,这会增加程序的复杂性。对于更大的程序,复杂性绝对值得,因为扩展/修改程序将指数级更容易并导致更少的错误。但是,对于99%不太可能改变的小程序或程序,尝试编程到抽象并删除任何依赖项所花费的额外时间,可能不值得。 Analysis Paralysis更有可能设计一个程序。

结束语

作为一个整体,我永远不会建议"紧密耦合"课程更好。然而,随着时间和复杂性的兴趣有时"紧密耦合"课程是合理的。