《大话设计模式》读书笔记

2015-03-09 derekchan 更多博文 » 博客 » GitHub »

大话设计模式

原文链接 http://gitdc.com/2015/03/09/design-pattern-notes.html
注:以下为加速网络访问所做的原文缓存,经过重新格式化,可能存在格式方面的问题,或偶有遗漏信息,请以原文为准。


1、面向对象的编程,并不是类越多越好,类的划分是为了封装,但分类的基础是抽象,具有相同属性和功能的对象的抽象集合才是类。

2、策略模式(Strategy):它定义了算法家族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户。

3、单一职责原则(SRP):就一个类而言,应该尽有一个引起它变化的原因,如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱活着仰制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到的破坏。

4、开放–封闭原则:是说软件实体(类,模块,方法等等),应该可以扩展,但是不可修改。

5、开放–封闭原则 是面向对象设计的核心所在。遵循这个原则可以带来面向对象声称的巨大好处,可维护,可扩展,可复用,扩展性高,开放人员应该仅对程序中呈现频繁变化那些部分做出抽象,然而对于应用程序中的每个部分都做出抽象同样不是一个好主意,拒绝不成熟的抽象和抽象本身一样重要。

6、依赖倒置原则:A、高层模块不应该依赖低层(底层)模块。两个都应该依赖抽象。B、抽象不应该依赖细节。细节应该依赖抽象。

7、里氏代换原则(LSP):子类型必须能够替换掉它们的父类型