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

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

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


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

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

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


模式是提供思考问题的一种思路,具体操作还是要靠自己去想
2 楼 bayers 2007-04-18  
世界上没有可以照搬的东西~模式只是参考~
1 楼 mazzystar 2007-04-18  
支持 支持

相关推荐

    别样诠释:一个Visual C++老鸟10年学习与开发心得

    《别样诠释:一个Visual C++老鸟10年学习与开发心得》是关于资深开发者在Visual C++领域的深入探索和实践经验的总结。通过这个标题,我们可以了解到这是一本聚焦于Visual C++编程语言,尤其是从长期实践者的角度出发...

    如何写代码——编程内功心法

    看完了我的《GoF设计模式》系列文章的同学或者本身已经就是老鸟的同学显然不会这么认为。编程是一项非常严谨的工作!虽然我们自嘲为码农,但是这工作毕竟不是真正的搬砖,我们是软件工程师。编程需要关注的问题太多...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    Java编程老鸟潜心写作,奉献高效率的Java学习心得 完全站在没有编程经验读者的角度,手把手教会读者学习Java 配16小时多媒体教学视频,高效、直观 一一击破Java入门可能会遇到的难点和疑惑 抽丝剥茧,层层推进,让...

    跟老男孩学Linux运维:Shell编程实战

    前 言第1章 如何才能学好Shell编程 / 11.1 为什么要学习Shell编程 / 11.2 学好Shell编程所需的基础知识 / 11.3 如何才能学好Shell编程之“老鸟”经验谈 / 31.4 学完本书后可以达到何种Shell编程高度 / 5第2章...

    设计模式(电子书)

    设计模式是经验丰富的软件开发者在解决常见问题时总结出的最佳实践,它们提供了一种在特定上下文中有效解决问题的模板。这本书可能包含了23个经典的GOF(GoF, Gamma, Helm, Johnson, Vlissides)设计模式,以及一些...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    Java编程老鸟潜心写作,奉献高效率的Java学习心得 完全站在没有编程经验读者的角度,手把手教会读者学习Java 配16小时多媒体教学视频,高效、直观 一一击破Java入门可能会遇到的难点和疑惑 抽丝剥茧,层层推进,让...

    最新版程序员面试宝典(第三版)带电子目录完整版

    总结来说,《最新版程序员面试宝典(第三版)》是程序员面试准备的全面资源,它覆盖了从基础到高级的广泛知识领域,为面试者提供了扎实的理论基础和实战经验。通过深入学习并理解书中的内容,程序员可以显著提升自己...

    网易大数据产品团队研发实践.pptx

    团队采取“老鸟带菜鸟”的模式,通过技术专家开发模块组件,促进新成员快速成长,同时保持产品不断迭代进步。 业务驱动的测试策略是另一大亮点。通过产品组走查、Bug Bash、超管全回归等方法,确保产品质量。同时,...

    snipMate.zip

    《snipMate:Vim编辑器的代码片段插件详解》 ...无论你是Vim的新手还是老鸟,掌握并善用snipMate都能让你的编程之旅更加顺畅。因此,如果你还没有尝试过这个神器,那么现在就是加入snipMate大军的最佳时机!

Global site tag (gtag.js) - Google Analytics