12 2014 档案
摘要:What Interface Segregation Principle(ISP):客户端不应该依赖它不需要的接口;类间的依赖关系应该建立在最小的接口上 Why “不应该强迫客户依赖于它们不用的方法。接口属于客户,不属于它所在的类层次结构。”这个说得很明白了,再通俗点说,不要强迫客户使用它...
阅读全文
摘要:What Least Konwledge Principle(LCP):最少知识原则,一个对象应该对其他的对象了解的最少。 Why 降低系统的耦合度,使类与类之间保持松散的耦合关系。 How 员工类 class Employee { private strin...
阅读全文
摘要:What Dependence Inversion Principle(DIP):高层模块不应该依赖底层模块,都应该依赖于抽象;抽象不应该依赖于具体,具体依赖于抽象 Why 若高层依赖于底层,那么底层的变动也会导致高层的变动,这就会导致模块的复用性降低而且大大提高了开发的成本。若是依赖于抽...
阅读全文
摘要:What Liskov Substitution Principle(LSP),任何父类出现的地方,子类一定可以出现。 Why LSP是OCP原则的规范。OCP原则的关键的是抽象,而继承关系又是抽象的一种具体表现。 How 当子类不能完整的实现父类父类的方法,那么建议断开父子关系,采用...
阅读全文
摘要:What 开放封闭原则(Open-Closed Principle:OCP),对于扩展是开放的,对于修改是封闭的。软件设计的目标:封装变化、降低耦合,而OCP正是这目标最直接的提现之一。 Why OCP优点就是不会对已有的代码造成影响,减小测试的范围,以及代码的稳定性。 How 下面不...
阅读全文
摘要:1.怎么接触到设计模式: 是由朋友推荐,这位朋友给了我很多编程方面的指导,很感谢他,然后书荒的时候,就往这方面看了。 2.通过什么途径学习: 程杰老师编写的《大话设计模式》,李建忠老师主讲的设计模式的视频,也看了很多相关内容的博客。 3.学习设计模式的必要性: 有一种观点认为必要去专门...
阅读全文
摘要:超前的设计或者过度的设计都不是良好的设计,很多时候我们等到代码在第一次变化的时候可以及时作出反应。 What 就一个类(接口、结构体、方法等等)而言,应该仅有一个引起它变化的原因。 Why 软件设计真正要做的许多内容,就是发现职责并把那些职责互相分离。单一职责原则可以使类的复杂度降低,实...
阅读全文
摘要:WWH是"What+Why+How"的简称,是对学习方法最完美的概括。"如果不按照WWH这种模式来教学,90%的结果是老师没教好,学生学不好." 1.What(是什么) What是基础,说以学习之初一般都是先从“是什么”学起。例如:学习语文要先学拼音、汉字,学习数学要先学数字;学习英文要先学...
阅读全文

浙公网安备 33010602011771号