python 23种常用模式设计总结
在二月将python模式设计专题写完,常用模式23种,通过原创的案例和简要的描述来理解模式设计的思想,在代码和项目中达到用最少的代码实现需求。
模式设计目录:
创建型模式5种
《python设计模式(一):工厂方法与抽象工厂及应用场景》
《python设计模式(二):建造者模式》
《python设计模式(三):原型模式—快速实例化类的一种途径》
《python设计模式(四):单例模式及创建型模式总结》
结构型模式7种
《python设计模式(五):适配器模式——各种类接口的合并》
《python设计模式(六):桥接模式》
《python设计模式(七):组合模式》
《python设计模式(八):装饰模式》
《python设计模式(九):外观模式》
《python设计模式(十):享元模式》
《python设计模式(十一):代理模式模式》
《python设计模式(十二):结构型模式总结》
行为型模式11种
《python设计模式(十三):解释器模式》
《python设计模式(十四):模板方法模式》
《python设计模式(十五):责任链模式》
《python设计模式(十六):命令模式》
《python设计模式(十七):迭代器模式——迭代器与生成器》
《python设计模式(十八):中介者模式》
《python设计模式(十九):备忘录模式》
《python设计模式(二十):观察者模式》
《python设计模式(二十一):状态模式》
《python设计模式(二十二):策略模式》
《python设计模式(二十三):访问者模式》
模式设计是程序发展过程的解决问题的思路结晶,是无数前辈的心血挖总结,也是衡量一个程序员功底的标准之一,因此模式设计的思想应该好好的消化学习。
同时模式设计遵守以下几个原则:
1、开闭原则(Open Close Principle)
对扩展开放,对修改关闭。
2、里氏代换原则(Liskov Substitution Principle)
只有当衍生类可以替换掉基类,软件单位的功能不受到影响时,基类才能真正被复用,而衍生类也能够在基类的基础上增加新的行为。
3、依赖倒转原则(Dependence Inversion Principle)
这个是开闭原则的基础,对接口编程,依赖于抽象而不依赖于具体。
4、接口隔离原则(Interface Segregation Principle)
使用多个隔离的借口来降低耦合度。
5、迪米特法则(Demeter Principle)(应用少)
一个实体应当尽量少的与其他实体之间发生相互作用,使得系统功能模块相对独立。
6、合成复用原则(Composite Reuse Principle)
原则是尽量使用合成/聚合的方式,而不是使用继承。继承实际上破坏了类的封装性,超类的方法可能会被子类修改。
这些原则也体现在上述的模式设计思想中,模式设计是适用于任何一门编程语言的思想。
image