一、简介
所谓设计模式就是面向对象编程中的各种现成的套路,它也是众多前辈程序员经过长期实践总结出来的解决方案。
面对不同的需求场景,选择合适的设计模式,即可以提高代码的可读性、增加代码的可重用性、也可以保证代码的可扩展性。
二、分类
如下图所示,设计模式可以分为三类:创建型模式、结构型模式、行为型模式。除了下面23种设计模式,一般还有一种“空对象模式”,它可以归为行为型模式,总共24种。
(1)创建型模式
主要目的是用来创建对象。
(2)结构型模式
主要目的是优化不同的类、对象、接口之间的结构关系
(3)行为型模式
主要目的是更好的实现类与类之间的交互
三、扩展
由于编程技术的不断发展,许多新的设计模式也不断产生,目前已远不止24种。比如并发型模式、生产者消费者模式、发布订阅模式……
需要注意的是,Web开发中的MVC模式,一般来说,并不认为它属于设计模式。因为设计模式研究的是类与对象、接口之间的关系,解决的是某一特定问题。而MVC模式研究的是模块之间的关系,属于架构设计。