设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理地运用设计模式可以完美地解决很多问题,每种模式在现实中都有相应的原理来与之对应,每种模式都描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是设计模式能被广泛应用的原因。
设计模式的目的
代码重用性(相同功能的代码,不用多次编写),
可读性(编程的规范性,便于其他人的阅读),
可扩展性(增加新的功能时,非常方便,称为可维护性)
可靠性(增加新的功能之后,对原来的功能没有影响)
总之设计模式可以使程序高内聚,低耦合。
设计模式的本质
提高软件的维护性,通用性和扩展性,并降低软件的复杂度。
设计模式的分类
(1)创建型模式:**单例模式**,抽象工厂模式,原型模式,建造者模式,**工厂模式**
(2)结构型模式:适配器模式,桥接模式,**装饰模式**,组合模式,外观模式,享元模式,**代理模式**
(3) 行为型模式:模板方法模式,命令模式,访问者模式,迭代器模式,**观察者模式**,中介者模式,备忘录模式,解释器模式,状态模式,策略模式,职责链模式
设计模式面向对象原则
(1)它优先使用的是对象组合而不是继承;
(2)它对接口编程而不是对实现编程。