willjava

导航

 

2014年5月11日

摘要: High level modules should not depend upon low level modules. Both should depend upon abstractions. Abstractions should not depend upon details. Detail... 阅读全文
posted @ 2014-05-11 17:28 威尔爪哇 阅读(194) 评论(0) 推荐(0)
 
摘要: 若对于每一个类型S的对象o1,都存在一个类型T的对象o2,使得在所有针对T编写的程序P中,用o1替换o2后,程序P的行为功能不变,则S是T的子类型。What is wanted here is something like the following substitution property: I... 阅读全文
posted @ 2014-05-11 17:23 威尔爪哇 阅读(202) 评论(0) 推荐(0)
 
摘要: 开放-关闭原则:是说软件实体(类、模块、函数等等)应该可以扩展,但是不可修改[ASD]。这其实说明了两个特征,一个是“对于扩展是开放的(Open for extension)”,另一个是“对于更改是封闭的(Closed for modification)”[ASD]。对扩展开放,意味着有新的需求或变... 阅读全文
posted @ 2014-05-11 16:52 威尔爪哇 阅读(135) 评论(0) 推荐(0)
 
摘要: 单一职责原则(SRP),字面意思就是功能要单一,准确解释是:就一个类而言,应该仅有一个引起它变化的原因[ASD]。如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当发生变化时,设计会遭受到意想不到的破坏[ASD... 阅读全文
posted @ 2014-05-11 16:23 威尔爪哇 阅读(211) 评论(0) 推荐(0)
 
摘要: 策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。(原文:The Strategy Pattern defines a family of algorithms,encapsulates each one,and makes t... 阅读全文
posted @ 2014-05-11 11:02 威尔爪哇 阅读(123) 评论(0) 推荐(0)