OpenFlow
传统的网络环境中,只有路由器/交换机之间的接口/协议是标准化的,但是在网络设备内部,数据平面和控制平面其实是耦合在一起的,每一家厂商都有自己专有的系统来实现这两个平面,而且数据平面和控制平面不能够分开独立演化。
在 初期网络环境比较简单的时候,这种数据平面和控制平面的耦合其实无关紧要;但是现在的企业内部网络环境愈来愈复杂,大量异构的网络设备、复杂的组织架构、 竞争日趋激烈的市...
分类:
其他好文 时间:
2014-05-09 01:03:19
阅读次数:
298
疏耦合卡(VICC)国际标准ISO15693-1点击下载疏耦合卡(VICC)国际标准ISO15693-2点击下载疏耦合卡(VICC)国际标准ISO15693-3点击下载
分类:
其他好文 时间:
2014-05-08 21:34:07
阅读次数:
278
依赖于抽象。具体而言就是高层模块不依赖于底层模块,二者都同依赖于抽象;抽象不依赖于具体,具体依赖于抽象。依赖一定会存在于类与类、模块与模块之间。当两个模块之间存在紧密的耦合关系时,最好的方法就是分离接口和实现:在依赖之间定义一个抽象的接口使得高层模块调用接口,而底层模块实现接口的定义,以此来有效控制...
分类:
其他好文 时间:
2014-05-08 17:55:28
阅读次数:
239
有两个对象A和B,A some B 是A依赖于B,当B some A的时候是B依赖于A这就叫依赖反转;
这种依赖关系如果让程序员自己控制(new 对象),就会出现高耦合,控制反转(依赖注入)就是让这种依赖关系由第三方管理(eg:spring)而不是程序员自己管理。...
分类:
其他好文 时间:
2014-05-08 16:05:17
阅读次数:
288
对于单一职责原则,其核心思想为:
一个类,最好只做一件事,只有一个引起它的变化。单一职责原则可以看做是低耦合、高内聚在面向对象原则上的引申,将职责定义为引起变化的原因,以提高内聚性来减少引起变化的原因。职责过多,可能引起它变化的原因就越多,这将导致职责依赖,相互之间就产生影响,从而大大损伤其内聚性....
分类:
其他好文 时间:
2014-05-08 15:25:07
阅读次数:
232
前面详细阐述了“高内聚低耦合”的总体设计原则,但如何让设计满足这个原则,并不是一件简单的事情,幸好各位前辈和大牛已经帮我们归纳总结出来了,这就是“设计原则”和“设计模式”。毫不夸张的说,只要你吃透这些原则和模式并熟练应用,就能够做出很好的设计。==================================================================【SRP原则详解】SRP...
分类:
其他好文 时间:
2014-05-08 10:40:42
阅读次数:
330
设计模式就如同搭积木,这几种关系就如同积木,设计模式的作用无非就是为了将这几种关系组合,最大化降低程序耦合度,使代码结构达到最优,便于应对以后的需求变更。...
分类:
其他好文 时间:
2014-05-07 21:50:58
阅读次数:
576
1.Delegate的使用场合? 对象A内部发生了一些事情,想通知对象B?
对象B想监听对象A内部发生了什么事情? 对象A想在自己的方法内部调用对象B的某个方法,并且对象A不能对对象B有耦合依赖? 对象A想传递数据给对象B?
...... 以上情况,结果都一样:对象B是对象A的代理(delegate...
分类:
其他好文 时间:
2014-05-07 10:26:12
阅读次数:
309
高内聚低耦合,可以说是每个程序猿,甚至是编过程序,或者仅仅只是在大学里面学过计算机,都知道的一个简单的设计原则。虽然如此流行和人所众知,但其实真正理解的人并不多,很多时候都是人云亦云。===============================================================要想真正理解“高内聚低耦合”,需要回答两个问题:1)为什么要高内聚低耦合?2)高内聚低耦合...
分类:
其他好文 时间:
2014-05-07 08:06:41
阅读次数:
351
应对的情况:当一个可观察者的状态发生改变时,观察者的数据也要实时更新。
你可能第一时间会想到的是,直接在可观察者类上调用观察者的方法就行了。是的,这是一种最直接,也是最简单的方法。但这样做就使得可观察者和观察者的耦合性很高,且不能动态更改观察者的数量。
我们或许可以这样做,写一个可观察者的接口:
public interface Subject {
public void...
分类:
其他好文 时间:
2014-05-06 14:58:55
阅读次数:
222