最近想要研究设计模式,但是设计模式挺多的,想问问大家常用的设计模式有哪些?
“ 设计模式贯穿于众多示例中:适配器、桥接器、职责链、命令、装饰器、外观、工厂方法、享元、点名、数据传输对象、空对象、代理、单例、状态、策略、模板方法以及访问者。” --《THINKING IN JAVA》
我在学习设计模式时,啃过书,看过博客,感觉基本都理解了,在开发中确无法顺其自然的使用。过不了几个月又忘完了,只记得几个名词。自从阅读一些源码之后,对一些设计模式才有了深刻的理解(spring mvc,Tomcat源码)。
设计模式的重点并不在于类之间关系的严格定义、罗列和排布,无意义的争辩、论证会陷入“把设计模式当作一个严格的学术理论”的误区。更多的,我们应该从问题的意图
出发,发散思考解决方案中可能包含的设计元素,然后根据实际情况精简到合理的规模。
可以看我的文章15分钟入门23种设计模式:图解,范例和对比
该文力图在15分钟内,通过范例和类比,让你对面向对象的23种设计模式形成提纲挈领的认识,从而让我们在面临代码设计问题时更加成竹在胸。
3 回答2.6k 阅读✓ 已解决
3 回答4.1k 阅读✓ 已解决
8 回答3.6k 阅读
4 回答2.8k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答2.5k 阅读✓ 已解决
3 回答1.7k 阅读✓ 已解决
自己业务开发用到
职责链模式 - 用来做复杂长流程处理
命令模式 - 解耦调用者和被调用者,做一些扩展逻辑
另外设计模式的书别想着从头到尾一次看完,这个只有需要时候慢慢派上用场