藕
虽然两个藕字不一样,但也差不多了,这种关联就叫耦合。
耦合
系统耦合始源于物理学,在物理学上耦合是指两个实体相互依赖于对方。
最形象的例子一条链子的两个环套在一起,耦合度很高,中间但凡哪个环断了,这条链子都将不能使用。
在长久的使用中,肯定有些环会有磨损,如果此时链子吊着一个重物,那就很危险了。
怎么解决呢,我想如果两个环叠在一起和另外两叠在一起的环相扣,那耦合度就降低了,这个环坏了,和他相叠的环仍然在起作用。然后就可以及时更换了。
这就叫降低耦合度。
食物
能量的来源是太阳,但是人以及动物又不能直接吃太阳光,也不能利用他来合成有机物。而植物能够透过光合作用利用无机物生产有机物并且贮存能量。所以人和动物可以通过植物获取能量,如果只吃一种植物,那人和动物早灭绝了。因此动物的食谱都是很丰富的,这就降低了和某种植物的耦合,虽然他们最喜欢吃的就是那一两种。
域名
虽然域名的产生是因为人们记不下那 ip 数字。
但是不得不说他同样有 解耦合的作用。
因为域名更换的可能性很小,而服务器 ip 更换的可能性很大。如果 服务器换了,我们只需将域名指向新 ip 就行了。
代码
代码是对现实世界的模拟,当然少不了耦合的存在。降低耦合的操作可以让代码活的更健康一点。办法呢就是一种事物不与另一种事物直接关联。依赖注入就是这么做的,我建一个容器,你们的对象都放容器里,而每个对象都和我容器打交道就行了。毕竟我可以保证容器改变的几率是最小的。