如何使用设计模式-误区

通过学习设计模式,可以使软件开发人员的面向对象分析和设计的能力得到很大的拓展和加强,即使编程人员还没有直接使用设计模式,只要真正用心理解了设计模式,那么软件开发人员的设计水平也将得到很大的提高。当然,学习设计模式最主要的目的是为了应用。那么如何使用设计模式呢?下面就是使用设计模式时应该遵循的几条准则:准则一:以充分学习和了解各个设计模式为基础。只有充分了解和掌握了每一个设计模式背后的设计原则和策略,才有可能运用自如。

准则二:设计模式应该互相配合,共同解决问题。不能将设计模式作为一个单独的东西使用,应该将它们结合起来。

准则三:重点思考和学习模式背后的原则和策略,而不仅仅是学习和运用己有的模式,

应该能创造自己的模式。在使用设计模式的过程中,使用者可能会产生以下几个误区:误区一:在使用设计模式时,因为软件中的设计模式最初是以设计模式为名引人的,所以,学习者误以为模式只能应用于软件开发的设计阶段。其实不然,在软件开发的各个阶段,包括分析、设计和实现阶段都存在模式。

误区二:在项目开发的过程中,试图使用所有的模式。实际上,在项目的开发过程中,并不是模式使用得越多就一定越好。如果软件开发人员不能根据特定的问题,去寻求模式的解决方案,而只是凭臆想或是过于牵强地加模式,有可能使项目最后偏离了方向,使得整个项目真正需要解决的问题没有解决,反而在一些不重要的额外问题上花费过多的时间和精力,甚至使得最后的软件因为过于灵活,而没有人真正需要使用它。另外,很多模式是关于扩展性和重用性的。当确实需要扩展性的时候,模式提供某种方法来实现它,这可以有效地提高软件开发人员的开发效率,但是当不需要它的时候,应该让设计保持简单并且不要添加不需要的抽象层。

误区三:在不理解项目的实际背景的情况下,就急于照本宣科似的应用设计模式。Erich Gamma(里程碑式的书籍《设计模式》的作者之一)在有关设计模式的使用方法上,就建议人们"不要一开始就马上把模式套进某个设计,而是当你一边深人并且对问题理解更多的时候才使用它们"。

相关推荐
凤凰院凶涛QAQ7 分钟前
《Java版数据结构 & 集合类剖析》Map & Set & 反射:“从哈希碰撞到红黑树转换,反射帮你扒开 HashMap 的桶数组看个究竟”
java·数据结构·算法
H.莓飛10 分钟前
【数据结构】排序_OJ题(一):计数、桶与排序后的处理
java·开发语言·数据结构
wangchunyu1141 小时前
JAVA AQS与Lock实现原理(含CAS)
java·开发语言·word
科威网络1 小时前
企业网站技术方案:响应式、SEO 结构与性能优化实践
性能优化·需求分析·软件需求
爱喝水的鱼丶2 小时前
SAP-ABAP:ECC→S/4HANA ABAP 迁移升级指南——程序改造、语法兼容与性能优化 导语
运维·开发语言·性能优化·sap·abap·经验交流·开发交流
w_zero_one2 小时前
算法--模拟
java·数据结构·算法
小灰灰搞电子2 小时前
Rust+Slint 实现FTP客户端调试助手源码分享
开发语言·后端·rust
外收内放2 小时前
面向对象高级(实战案例)
开发语言·python·学习
Javatutouhouduan2 小时前
阿里1658页Java面试题总结(含答案)
java·高并发·java面试·java面试题·后端开发·java程序员·java八股文
秋天的怀念_David2 小时前
算法一千零一夜 · 第十三夜 幻方,武侠世界里的数学迷宫
java·程序人生·算法