zoukankan      html  css  js  c++  java
  • 重新理解设计模式(Week 3)

    设计模式(Design Patterns)是在软件设计中,对某一种特定问题的通用解决方案,并且是可复用的解决方案。

    设计模式这个术语是上个世纪90年代由Erich Gamma、Richard Helm、Raplh Johnson和Jonhn Vlissides四个人基于他们自身的面向对象编程经验总结提炼出来的,并且写了一本Design Patterns的书。这四人也被称为四人帮(GoF)。

    设计模式的终极目的是解决编程过程种的问题,使代码达到“高内聚低耦合”的目标。要达到这个目标,设计模式自然遵守面向对象的设计原则SOLID。把握住这个目标和原则,自然就容易理解每个模式为什么是那样的实现,还有什么可以改进的地方,根据自己特定领域的问题还可以有什么样的变种。

    学习设计模式并不是记住每个模式的实现就可以了(当然这也是很难记住的)。要理解每个模式要解决的问题,想要达到的目标,以及采取了什么样的取舍、什么样的解决方案,最终其优缺点是什么。不能生搬硬套,也不能为了使用设计模式而过度设计,要合理平衡设计的复杂度和灵活性,并意识到设计模式也并不是万能的。

    软件设计是演化出来的,设计模式也是由需求推动出来的。在最开始阶段,如果没有扩展方面的需求,可以先不使用设计模式、以使代码简单易读,随着开发的持续、需求的增加,可以引入设计模式、消除模块间耦合,使不同开发者减小或避免相互影响。


    第三周课程总结-思维导图

  • 相关阅读:
    BZOJ 2299 向量
    BZOJ 1237 配对
    BZOJ 2226 LCMSum
    BZOJ 1876 SuperGCD
    查漏补缺:C++STL简述(容器部分)
    查漏补缺:Linux进程与线程的区别
    码海拾遗:常用的其中排序算法
    码海拾遗:简述C++(一)
    码海拾遗:简单的链表类
    码海拾遗:位运算实现加减乘除
  • 原文地址:https://www.cnblogs.com/susy/p/13768876.html
Copyright © 2011-2022 走看看