设计模式的目的
编写程序(软件)过程中,程序员面临这来自耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性等多方面的挑战,设计模式是为了让程序(软件),具有更好的
- 代码重用性(相同功能的代码不用编写多次)
- 可读性(编程规范性, 便于其他人员的阅读和理解)
- 可扩展性(当需要增加新功能时,非常方便)
- 可靠性(增加新功能后,对原来的功能没有影响)
使程序呈现高内聚,低耦合的特性。
设计模式常用的七大原则
- 单一职责原则
- 接口隔离原则
- 依赖倒转(倒置)原则
- 里氏替换原则
- 开闭原则
- 迪米特原则
- 合成复用原则
设计模式分类
-
创建型模式:单例模式,抽象工厂模式,原型模式,建造者模式,工厂模式。
-
结构性模式:适配器模式,桥接模式,装饰模式,组合模式,外观模式,享元模式,代理模式。
-
行为型模式:模板方法模式,命令模式,访问者模式,迭代器模式,观察者模式,中介者模式,备忘录模式,解释器模式,状态模式,策略模式,职责链(责任链)模式。
设计模式的核心思想
- 找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。
- 针对接口编程,而不是针对实现编程。
- 为了交互对象之间的松耦合设计而努力。