什么使耦合“;松散的“;编写松散耦合的代码更好吗
本文关键字:耦合 更好 代码 什么 | 更新日期: 2023-09-27 17:52:48
可能重复:
什么是“松耦合”请举例说明。
是什么让耦合变得"松散"?写松散耦合的代码更好吗?
**请给我提供一些链接。
这是一个非常广泛的主题,您应该开始研究GRASP模式。
两个类之间的松散耦合意味着每个类对另一个类的内部行为知之甚少。属于同一个"模块"或"包"的类之间可能有更高程度的"耦合",这不是一个坏做法:与只有低耦合类的情况相比,这会使模型更容易理解。
松耦合是一种由模块组成的体系结构。这些模块通过一些接口相互访问(公共方法可以,但存在更多未绑定的方式(。模块不需要彼此进行编译(通常(,并且可以很容易地更改为具有相同接口的另一个模块。
在相关问题中有几个例子什么是"松耦合"。
至于您的代码是否应该松散耦合,这取决于它所实现的系统是什么
例如,web是松散耦合的——任何组件都经过相同的http接口,您可以随意地在硬件到应用程序的各个层中的任何位置切换组件的实现和服务提供商。
另一方面,高性能图形卡的驱动程序与它设计的硬件紧密耦合——任何其他东西,都会失去性能。操作系统和驱动程序之间的接口耦合不那么紧密,对于给定操作系统版本的所有驱动程序来说都是通用的,而应用程序代码和操作系统之间的接口通常也不那么紧密耦合,可能符合OpenGL等长期存在的标准。
代码在这些极端之间的位置将决定什么程度的耦合是合适的。
通过减少依赖关系,可以使耦合更加松散。。
松耦合是一种重视使部件可互换的重要性的软件开发方法。如果两段代码是松散耦合的,那么对其中一段代码所做的更改对另一段代码几乎没有影响。
这里有一些链接。。
http://programmingexamples.wikidot.com/glossary:loose-耦合
http://www.artima.com/weblogs/viewpost.jsp?thread=6544
http://c2.com/cgi/wiki?CouplingAndCohesion
http://earthli.com/news/view_article.php?id=2507
http://www.codeproject.com/KB/cs/DynamicInvoking.aspx