参考资料:
《大话设计模式》
常用设计模式的总结
简单工厂模式
负责实例化。将具体的实例化与使用端分离
比如编写程序实现能加减乘除的计算器,每一种计算规则为一个类,决定用什么计算规则,添加计算规则都在一个类中完成,这个类就是创建实体的工厂。
策略模式
定义一系列算法。将具体的算法与使用端分离,封装了变化。
比如商场收银程序中,折扣方式经常在变,利用策略模式包装使用的折扣方式。
单一职责模式
一个类仅有一个引起它变化的原因。如果有多个则要进行职责分离。
开放封闭原则
对于扩展是开放的,对于修改是封闭的。当变化发生时,创建抽象来隔离以后发生的同类变化。
依赖倒转原则
1.高层模块不应该依赖低层模块,两个都应该依赖抽象,谁都不依赖谁
2.抽象不应该依赖细节,细节应该依赖抽象。面对接口,抽象编程而不是面对实现编程。
里氏代换原则:子类型必须能够替换掉它们的父类型
装饰模式
动态地给一个对象添加一些额外的职责,把每个要装饰的功能放在单独的类中,并让这个类包装它要装饰的对象,将装饰功能从类中搬移了。
代理模式
为其他对象提供一种代理以控制对这个对象的访问,具有间接性,代理就是真实对象的代表。
工厂方法模式
定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。
与简单工厂的区别:简单工厂在工厂类中决定实例化哪一个类,工厂方法利用接口,让调用方决定实例化哪一个类。
原型模式
…待更新
一些思想
1.封装频繁变换的部分