`
chenchh
  • 浏览: 60806 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

不要滥用模式

阅读更多

    从理论上讲,面向对象的编程鼓励代码的复用,而设计模式本身是经过时间检验的设计方案,因此,应当说应用设计模式便是对成功的设计方案的复用。通过设计方案的复用,可以带动代码的复用,达到提高代码复用率的作用。但是所有的理论在应用到实践中的时候,都必须对具体问题做具体分析。

    随着设计模式越来越普及,有一种倾向也变得越来越明显,这就是没有经验的设计师对设计模式的盲狙崇拜和过分的追求。这些设计师不是全力以赴的为他们所面临的问题找出最好的设计,而是将力气放在如何尽可能多的和频繁的使用著名的模式。他们错误的认为,只要使用了这些设计模式,就可以保证一个设计方案是好的设计方案。因此,使用的模式越多,设计就越好,这就导致了很多根本没有意义的统计。在这些设计里充斥着著名的设计模式,但是设计却和系统的需要严重脱节。

    要想恰到好处的在一个系统里面使用设计模式,必须做到以下几点:

    (1)完全了解面临的问题,这就是说要完全了解具体情况。如果不完全了解所面临的问题,怎么能谈的上解决问题呢?

    (2)完全了解模式,这就是说要十分懂得理论。如果不完全懂得所使用的理论,怎么能够正确的应用这一理论呢?

    (3)非常了解怎样使用设计模式解决实际的问题,这就是说要将模式理论与具体系统需求情况相结合。如果设计师不知道一个设计模式怎样对系统设计有帮助的话,最好不要使用这个模式。不要只是因为想在简历上写上设计模式方面的经验就盲目的使用模式。

分享到:
评论

相关推荐

    Java与模式(阎宏)完整PDF版.part1.rar

    阎宏老师的《Java与模式》 相当经典,深入浅出地介绍了各个设计模式 很好地用Java演绎了设计模式 绝对是您用Java语言学习设计模式的好书!

    软件设计模式(收藏PPT)

    通过深入学习,你可以了解如何在面向对象的设计中识别和应用这些模式,如何根据具体需求选择最合适的模式,以及如何避免滥用模式导致的过度设计。 此外,学习设计模式的同时,还应结合实际编程语言,比如Java、C#或...

    C#面向对象设计模式纵横谈-1.Singleton 单件(创建型模式)

    在提供的"1.Singleton 单件(创建型模式).wmv"视频文件中,可能详细讲解了Singleton模式的概念、实现方式、优缺点以及在C#中的具体应用实例,包括如何在实际项目中适当地使用和避免滥用Singleton模式。观看该视频可以...

    eclipse 设计模式 plugin

    例如,发现大量单例模式的滥用可能导致内存泄漏,插件可能会提示转换为原型模式;或者在观察者模式应用不当时,插件可以帮助重构订阅关系,提升代码的灵活性。 总结,Eclipse 3.3 设计模式插件是提升开发者设计能力...

    深入浅出设计模式.pdf

    此外,书中可能还讨论了如何在实际项目中选择合适的设计模式,以及如何避免滥用模式导致的过度设计问题。 设计模式并非孤立存在,它们之间往往有相互关联和组合使用的情况。例如,装饰器模式可以用来动态地给对象...

    设计模式培训

    此外,我们还会讨论如何在实际项目中选择合适的设计模式,以及如何避免滥用设计模式导致的过度设计问题。 设计模式的学习并非一蹴而就,它需要时间和实践去沉淀。在培训过程中,我们将提供丰富的案例和实战练习,...

    侯捷 侯俊杰 设计模式 同济大学 课件

    7. **最佳实践**:提供关于如何在团队中推广和使用设计模式的建议,以及避免滥用模式可能导致的问题。 8. **课件中的"dp-tongji-2009.pdf"**可能是课程的主要内容,包含了课程大纲、讲义、实例代码和讨论材料,对于...

    软件设计 模式PDF

    在第15章,通常会总结前面的知识,并讨论如何在实际项目中选择和组合设计模式,以及如何避免模式滥用。此外,可能还会介绍一些新兴的设计思想,比如模版方法模式在函数式编程中的应用,或者如何将设计模式与设计模式...

    java设计模式电子书

    书中可能还会讨论如何在实际项目中选择和组合不同的设计模式,以及如何避免模式滥用导致的过度设计。理解设计模式之间的关系和相互作用也是至关重要的,例如,适配器模式可以和装饰器模式结合,以增强或修改已存在的...

    深入浅出设计模式英文影印版 Part 1/4

     ·何时不该使用该模式(如何避免滥用模式);  ·某个模式是依据哪些面向对象设计原理而设计出来的。  更重要的是,你想在学习设计模式的过程中,不感觉到昏昏欲睡。如果你曾经读过任何一本深入浅出(Head ...

    HeadFirst设计模式源代码

    通过研究HeadFirst的代码,你可以看到如何在实际项目中应用这些模式,如何在不同的场景下选择合适的模式,以及如何避免模式的滥用导致的过度设计。同时,这也有助于你理解面向对象设计的原则,如单一职责原则...

    设计模式ppt(C++)

    此外,不要忘记设计模式并不是银弹,过度依赖或滥用设计模式可能会导致代码过于复杂。合理地选择和应用设计模式,结合C++的特性,才能真正提升软件的质量和可维护性。在实践中,不断反思和改进,逐渐掌握设计模式的...

    Head First 设计模式(高清中文完整版带目录+附书源码+HeadFirst设计模式学习伴侣.rar).7z.002(2-2)

     ·何时不该使用该模式(如何避免滥用模式);  ·某个模式是依据哪些面向对象设计原理而设计出来的。  更重要的是,你想在学习设计模式的过程中,不感觉到昏昏欲睡。如果你曾经读过任何一本深入浅出(Head ...

    Java 设计模式之创建模式

    与单例模式相比,多例模式提供了更多的灵活性,但需要管理和控制这些实例的使用,防止无序访问和资源滥用。 总的来说,创建模式在Java设计模式中扮演着重要角色,它们帮助我们构建更加灵活、可扩展的软件系统。理解...

    平台运营商的市场支配地位滥用与结构性救济——案例回顾、研究述评与新监管模式构想.docx

    平台运营商的市场支配地位滥用与结构性救济——案例回顾、研究述评与新监管模式构想.docx

    基于C#的设计模式中的单件模式

    因此,在使用单例模式时应谨慎考虑,避免滥用。 综上所述,单例模式在C#中有着多种实现方式,每种方式都有其适用的场景和优缺点。理解和正确运用单例模式,对于提高软件的可维护性和性能具有重要意义。

    head first设计模式 中文版

    第三章可能继续深入,引入更复杂或高级的设计模式,如模板方法模式(Template Method)、状态模式(State)或访问者模式(Visitor),同时也会讨论如何在实际项目中选择和应用设计模式,以及如何避免滥用模式导致的...

    被滥用的移动UX模式

    设计师遵从设计指南,以确保通过用户所熟悉的模式来创建好用的应用界面,但模仿指南、他人的风格会扼杀创造力,总有一天使得所有应用变成同一个模样。本文作者从几个公认的最佳范例模式入手,详解UX设计。设计届的...

    JAVASCRIPT设计模式[收集].pdf

    然而,闭包的使用也需要注意避免滥用,以免对内存造成消耗。 二、封装 封装是面向对象设计的基石,通过将一个方法或者属性声明为私有的,可以让对象的实现细节对其他对象保密,以降低对象之间的耦合程度。...

Global site tag (gtag.js) - Google Analytics