设计模式的定义:
设计模式是指在软件开发中,经过验证的,用于解决在特定环境下,重复出现的,特定问题的解决方案。
应用设计模式的步骤:
1、找出稳定点与变化点,把变化点隔离出来。
2、代码设计的时候要先满足设计原则,慢慢迭代出设计模式。
设计原则:
1、依赖倒置:
a、高层模块不应该依赖低层模块,两者都应该依赖于抽象。
b、抽象不应该依赖具体实现,具体实现应该依赖于抽象。
2、开放封闭:
一个类应该对扩展(组合和继承)开放,对修改关闭。
3、面向接口:
a、不将变量类型声明为某个特定的具体类,而是声明为某个接口。
b、客户程序无需获知对象的具体类型,只需要知道对象所具有的接口。
c、减少系统中各部分的依赖关系,从而实现“高内聚,松耦合”的类型设计方案。
4、封装变化点:
将稳定点和变化点分离,扩展修改变化点,让稳定点和变化点的实现层次分离。
5、单一职责:
一个类应该仅有一个引起它变化的原因。
6、里氏替换:
子类型必须能够换掉它的父类型,主要出现在子类覆盖父类实现,原来使用父类型的程序可能出现错误,覆盖了父类方法缺没有实现父类方法的职责。
7、接口隔离:
a、不应该强迫客户依赖于它们不用的方法。
b、一般用于处理一个类拥有比较多的接口,而这些接口涉及到很多职责。
8、组合优于继承:
继承耦合度高,组合耦合度低。
推荐书籍:
《设计模式-可复用面向对象软件的基础》
《重构与模式》