松耦合和紧耦合

来源:互联网 发布:马哥linux全套 网盘 编辑:程序博客网 时间:2024/04/29 01:43
客户端应用程序可以用不同的方式连接和使用其他进程(包括本地进程和网络进程)中的组件和服务。按照服务与客户端之间存在多少耦合性对不同的方法进行分类是很有用的。

耦合性是指组件(在分布式系统中)互相依赖的程度。客户端与它们同其进行通讯的服务之间耦合的性质可能影响智能客户端设计的许多方面,包括互操作性、脱机功能、网络通讯性能、部署以及维护注意事项。

紧 耦合系统通常提供直接的对象到对象通讯,并且客户端上的对象对远程对象具有详细的了解。这种紧耦合性可以防止对客户端或服务器进行单独更新。因为紧耦合系 统涉及直接的对象到对象通讯,所以对象通常比在松耦合系统中更为频繁地交互,这样,如果两个对象位于不同的计算机上并且由网络连接分隔,则可能导致性能和 延迟问题。

松耦合系统通常是基于消息的系统,此时客户端和远程服务并不知道对方是如何实现的。客户端和服务之间的通讯由消息的架构支配。只要消息符合协商的架构,则客户端或服务的实现就可以根据需要进行更改,而不必担心会破坏对方。

松耦合通讯机制提供了紧耦合机制所没有的许多优点,并且它们有助于降低客户端和远程服务之间的依赖性。但是,紧耦合性通常可以提供性能好处,便于在客户端和服务之间进行更为紧密的集成(这在存在安全性和事务处理要求时,可能是必需的)。

所有与远程服务或组件通讯的分布式客户端都具有某种程度的耦合性。您需要了解各种松耦合方法和紧耦合方法具有的不同特征,以便为您的应用程序选择合适程度的耦合性。


如果要详细了解耦合性,那多了解一些<<软件工程>>之类的书
原创粉丝点击