关于设计模式

1. 什么是设计模式

首先,设计模式是针对软件开发过程中可能存在的问题的一系列解决方案,常见的有23种。它是开发人员经过无数工程实践总结出来的一套模版,是特定情境下针对特定问题的最佳实践。 
其次,设计模式也代表了一种设计思想,它构建了系统中不同角色的交互模型,便于我们直观把握和分析系统的主要矛盾。

2. 我需要学习设计模式吗

对于设计模式,相信不少人曾今和我一样有困惑:这么多设计模式,是否真的有必要学习?我不用任何设计模式(最多用一下单例模式,但是像scala等语言甚至在语言层面实现了单例),照样能很好的完成工作啊,而且代码更少。当然,这种看法在某种层面,某些情况下是对的,如果你的系统特别简单,模块少,系统在将来也没啥扩展需求,那么不用设计模式也没多大问题。但是在工作中,我们的系统往往由多个模块构成,系统相当复杂,而且需要处理复杂的业务逻辑,要不断面临需求的变更,业务高速发展期系统也要做升级和改造,那么这时候,系统的良好设计就显得非常重要了。

3. 设计模式的优点

1.为我们解决问题提供了一套行之有效的方案,节省精力同时避免重复犯错 
2.设计模式和现实世界有很强的关联,便于我们直观把握系统的主要角色和主要矛盾,高屋建瓴。 
3.为软件开发提供了一套设计上的通用语言,便于开发人员之间的交流以及项目维护。 
4.良好的设计模式使系统功能清晰,健壮,易于扩展。

4. 设计模式是万能的吗

当然不是。设计模式毕竟是开发人员的经验产物,虽然它的实用性经过了常年累月的考验,但是区区23种模式怎可能将世间万物囊括其中。更不用说世界变化如此之快,原来的最佳实践在新的情境和需求下也许就不适用了。所以关键在于理解设计模式的思想,理解其解决问题的方式,这样就能以不变应万变。

原文地址:https://www.cnblogs.com/takumicx/p/9245024.html