首页 > 代码库 > 第0篇 设计模式初学
第0篇 设计模式初学
从今天开始利用自己零碎的时间来学习设计模式,一周看2个设计模式,每个设计模式写一篇文章来督促自己的学习。希望自己可以坚持下去。每天进步一点点!
面向对象的设计原则:
1.单一职责原则
意思是程序中的每一个对象都应该只有单独的职责,该对象应该只关注自身完成的职责,而不去考虑其他的职责。我们称这样的对象遵循单一职责的原则!
2.开闭原则
对于一个对象,“开”是指对拓展开放,“闭”是指对修改关闭。意思就是要修改这个对象通过增加代码来进行(比如继承他)而不是通过修改他进行。因为如果一旦你修改了这个对象,那么用这个对象的地方都要修改。
3.依赖注入原则
依赖注入原则(DIP)的意思是说要依赖于抽象,不要依赖于具体的实现。在程序中所有的类如果要调用其他的类,就应该调用的该类的接口或者抽象类而不是直接调用该类,即“要针对接口编程,而不是针对实现编程”。比如:“动物园“饲养”动物“,而不是饲养”狮子“,饲养”大象“等等...
4.里氏替换原则
里氏替换原则(LSP)的人意思是在任何抽象类出项的地方都可以用他的实现类来代替。采用里氏替换原则可以更好的使用继承。比如,”动物园“饲养”动物“,但是真正养的是”老虎“,”狮子“等对象。
5.迪米特原则
迪米特原则(LOD)的意思是说一个对象应该对其他对象尽可能少的了解,从而降低各个对象之间的耦合性,提高系统的维护性。对于各个模块之间的相互调用应该用一个统一的接口实现,这样模块就不必知道他所调用的模块的具体细节,从而专心实现自己的内部细节。
·· 6.接口分离原则
接口分离原则(ISP)的意思是说不应该强迫客户依赖他们不需要使用的方法。也就是每个接口有一个功能呢个,而不是把许多方法封装到一个接口之中。
7.优先使用组合而不是继承
对于继承,如果修改了一个父类,那么他的所有子类都必须要修改,这样是很麻烦的一件事,所以优先使用组合,而不是继承。
23个设计模式:
创建型模式:
单例模式
简单工厂模式&&工厂方法模式
抽象工厂模式
原型模式
创建者模式
结构型模式:
适配器模式
门面模式
代理模式
合成模式
享元模式
装饰模式
桥模式
行为型模式:
策略模式
迭代器模式
模板方法模式
中介者模式
访问者模式
职责链模式
状态模式
解释器模式
观察者模式
命令模式
备忘录模式
敲完才知道原来有这么多模式啊,小菜鸟我真是开眼界了,希望计划学习设计模式的朋友和我一起学习吧,毕竟设计模式是非常重要的。而且,我觉得应该也是非常有趣的,毕竟和我们的生活息息相关。听这些名字就知道....还是努力学习吧!加油!
第0篇 设计模式初学