论坛首页 入门技术论坛

模式不是为编程老鸟总结的

浏览 4438 次
该帖已经被评为新手帖
作者 正文
   发表时间:2007-04-18  
          我发现很多人都绝得初学者学习模式没有用。我却不那么认为。我觉得模式还是可以看看,通过写代码练习一下。最好能记住。一旦问题出现才能很快的意识到应该用那种模式去解决。这样比自己绞尽脑汁写一些暂时没问题但后续维护会产生很大问题的代码要好得多。这样既能让你的代码维护起来比较轻松,还可以加深你对模式的理解。
         持学习模式对初学者没用观点的人总会说,只有通过积累才能理解模式。只有从大量经验中才能总结出模式。模式是练出来的而不是学出来的。我觉得有一定道理。但是不能一概而论。我觉得经验的确有助于理解和应用模式。但是如果光凭经验慢慢的去总结模式那就不可取了。试想初学者在公司里哪有什么机会去使用模式,因为现在的公司很多都很功利-能快速完成项目挣钱才是第一位的,什么模式不模式,根本就不考虑,以至于到项目的2期很多地方的代码都需要很大改动,如此改动不如重构。3期的就更不可想像。我有个同事听说要做一个项目的三期,头都大了。听说这个消息的当天晚上他就做噩梦了。On the other hand 大部分初学者被放逐写jsp,javabean....或着直接代码生成器生成代码最后调调就ok了。这样下来基本上与模式无缘了。也就是说他们根本没有什么机会去应用这23种模式。 所以我觉得初学者还是应该好好看看模式的。可能暂时不太理解但没有关系。但是只要持之以恒,多看看一些开源项目的代码或者Jdk的源代码,一定会很快理解的模式的作用以及为什么要用模式。这样对自己以后的发展也很有好处。
         打个不恰当的比喻:初学者就像刚从学校出来的学建筑专业的大学生,如果不学习建筑的理论知识(模式),他设计的建筑就很可能存在安全隐患。这样他也很难成为一个优秀的建筑设计师。我们不能总是从轮子开始建起。站在巨人的肩膀上总是更容易成功。
       特此说明,本文纯属个人观点。
   发表时间:2007-04-18  
世界上没有可以照搬的东西~模式只是参考~
0 请登录后投票
   发表时间:2007-04-18  
bayers 写道
世界上没有可以照搬的东西~模式只是参考~


模式是提供思考问题的一种思路,具体操作还是要靠自己去想
0 请登录后投票
   发表时间:2007-04-18  
同意yangyang的观点,我觉得对于初学者,设计模式不仅要学,而且应该在入行之初就应该进行培训。不过很多公司都不会出这份钱跟精力去培养的,因此也就有了“模式是给老鸟总结”这样的论点来推卸。
0 请登录后投票
   发表时间:2007-04-18  
    我是初学者.以我自身的经历来说,我觉得 模式很重要. 所以有时间我会看看这方面的资料和书籍.简单的几个模式,比如 工厂模式 之类的 原理都能懂.但要想更熟练的掌握,经验是必不可少的...
    思路有了,开发的时候便有底了.知道了为什么这样做,这样做的目的是什么.
   
0 请登录后投票
   发表时间:2007-04-18  
楼主说的对,总不能因为需要经验积累,入手难等等问题就不去学习设计模式思想了。就算一开始看不懂,留下个印象,在今后碰到类似的用法再去结合实际思考,总能体会到模式的价值。
0 请登录后投票
   发表时间:2007-04-18  
程序员再工作中要不断总结,提炼,才能有所沉淀,不为技术更新所累。
范式也好,模式也好,不过都是一些表象,重在思考提炼。
0 请登录后投票
   发表时间:2007-04-18  
只有用恶心的方式开发一次再用模式才能感受模式的魅力
0 请登录后投票
   发表时间:2007-04-18  
要理解一个模式有三个要素要搞清楚:
第一,这个模式的特定环境
第二,这个模式解决的什么问题
第三,这个模式的解决方案
其中最好掌握的就是第三,基本上看看书都能学会,其实最重要的也是最难掌握的事前两个,这就是很多时候模式被滥用的原因。
前两个光看书是不行的,必须要靠书中的理论和自己的实践的结合才行。
0 请登录后投票
   发表时间:2007-04-22  
抛出异常的爱 写道
只有用恶心的方式开发一次再用模式才能感受模式的魅力


这句话不太赞同。人类思想与技术长河发展至今,每个人很难能够遍历所有的发展过程。智慧的不断积累才能推动社会的不断变革于进步。

历史进展的比较,应当是在完成手头工作并开始探索未来发展之路时进行的倒后镜观察。

呵呵,我是读传播的,犯专业病了。
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics