四月份,又学习了一遍设计模式,对设计模式的理解也更为深入了一些。回顾学习设计模式的过程,大致经历了这么几个阶段。最初听说有设计模式是在2003年,当时买了GoF的书来看。断断续续的看了一些,只了解了一些概念。感觉无法入门,不知道怎么用,不知道为什么这样。
去年,看了李建忠讲解的“C#面向对象设计模式纵横谈系列课程”,收获颇深。建立起了设计模式相关概念的总体框架,了解了每个设计模式所解决的问题。最重要的是明白了学习设计模式的方法,重要的不是掌握每个设计模式的实现,而是要掌握面向对象设计的目的、原则。设计的目的是为了封装变化。设计模式是设计原则针对各种具体问题的应用。
近日,又看了吕震宇总结的“C#设计模式”。结合着每个模式,用C++写了一些代码,感受着每个模式用C++语言的实现方法。
现在,对设计模式有了一些感觉。回顾学习的过程,走了一些弯路。
第一,学习一门新技术,不能上来就扎进细节,这可能会在细节中迷失,出力不讨好。先到网络上找找,看看其他人学习的经验,对这门技术有个整体上的了解。确定好知识的依赖关系,以及学习的重点和方法。
第二,开始学习时,如果感觉所看的书籍很难,那这本书可能不太适合,不要勉强自己去读。先找一些入门的书来看,了解一些基本的概念。学习要循序渐进。
第三,如果用的着,学习效果更好。最近的项目中用C++语言开发,学习设计模式也就有了思考的平台。
第四,学习设计模式是一个长期的过程,不能一蹴而就。随着开发经验的积累,对设计模式会有更深入的理解。所以经常把设计模式的资料拿出来看看。