目录
1,概念
设计模式是一套经过反复使用的代码设计经验,目的是为了重用代码、让代码更容易被他人理解、保证代码可靠性。 设计模式于己于人于系统都是多赢的,它使得代码编写真正工程化,它是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现实中都有相应的原理来与之对应,每种模式描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是它能被广泛应用的原因。
2,设计模式原则
设计模式一共有六大原则,这些原则可以使得代码更加的高效而且具有复用性等优点,设计模式就是去遵守这些原则,从而得到的。
(1)开闭原则
开闭原则指的是对扩展开放,对修改关闭。也就是说,对于一段程序,你可以对其增加一些功能,但是不可以去修改里面的具体代码。
(2)依赖倒转原则
它是以开闭原则为基础,指的是争对接口编程,依赖于抽象类而不依赖与具体。
(3)里氏替换原则
里氏替换就是继承与复用的基础。只有当子类可以替换掉基类并且系统的功能不受影响的时候,基类才可以被复用,而子类也能够在基础类上增加新的行为。(任何基类可以出现的地方,子类一定可以出现),里氏替换原则是对开闭原则的补充,实现开闭原则的关键就是抽象化,而基类与子类的集成关系就是抽象化的具体体现,所以,里氏替换原则就是对实现抽象化的具体步骤的规范。
(4)接口隔离原则
使用多个隔离接口,降低接口之间的耦合度
(5)迪米特原则
最少知道原则,一个类应当尽量减少与其他实体进行相互作用,使得系统功能模块相对独立,降低耦合关系。核心思想就是降低类的耦合,是让类之间有一个“中介”来使其关联。注意:(但是如果过分的使用迪米特原则,就会导致产生大量的中介,传递类,导致系统复杂度变大)
(6)合成复用原则
尽量使用组合。聚合的方式,而不是使用继承。
3,设计模式分类
创建者模式:简单工厂模式,抽象工厂模式,单例模式,建造者模式,原型模式。
结构型模式:适配器模式,装饰者模式,代理模式,桥接模式,外观模式,组合模式,享元模式。
行为型模式:策略模式,模板方法模式,观察者模式,责任链模式,访问者模式,中介模式,迭代器模式,命令模式,状态模式,备忘录模式,解释器模式。
在之后的文章,会详细的解释部分常用的设计模式。