论坛首页 入门技术论坛

模式,用还是不用

浏览 5699 次
该帖已经被评为新手帖
作者 正文
   发表时间:2006-11-26  
 
    近两年模式炙手可热,加上各种框架的游行,几乎开发人员已经到了言必谈模式的地步,但是画虎不成反类犬,经常模式应用不仅没有带来很好的结构,反而使得代码难以维护。
    以前和一个同学讨论技术的时候,她说了一句今天听来特别经典的话:
    好的设计并不容易理解!
 
    的确如何,有时和其它程序员解释一些设计的时候,总是要花许多力气!比如说要构造树的时候,有人会问我为什么要用一个Node,直接一层层new下不就得了!听到这些问题,真的是哭笑不得!
 
    上次有一个朋友问我在什么环境下才应用设计模式,这种问题向来没有答案的,象《设计模式》书中就对每一个设计模式的应用环境给出了说明,另外我个人建议,没有把握用好就不要用。
    象我的习惯是核心代码是多用设计模式,因为设计核心代码的程序人员都有不少经验,使用设计模式,通过类名可以更快的了解系统,如看到ICommand,IVisitor就知道了类的功能。但是在应用层,就要好好考虑一下了!因为许多程序开发人员,特别是新毕生的学生,如果不适当的应用设计模式,反而会降低代码质量,所以在项目或者产品开发时,一定要注意如何应用模式。
   发表时间:2006-11-26  
   开发的时候,不用特意去使用模式,只要想着能解耦,好扩展就可以了,为了解决这个问题,模式自然就会用上的。
0 请登录后投票
   发表时间:2006-11-26  
我的意思也是差不多
不要为了模式而模式
在没有把握用好一个模式的前提下
就不要用模式
0 请登录后投票
   发表时间:2006-11-27  
如果项目比较小的时候,用模式可能会影响到性能.比如工厂模式,如果完全可以控制产生的具体类,那么工厂模式在中间加的一层中间层就显得多于了.
0 请登录后投票
   发表时间:2006-11-27  
个人愚见,
模式是架构,框架层的,应该尽可能少的把模式留给程序员去发挥,
否则只能说明设计做得不到位了,
0 请登录后投票
   发表时间:2006-11-27  
项目变大和复杂后自然要用到模式
反过来说,较大和复杂的项目不宜交给初学者 ^_^
0 请登录后投票
   发表时间:2006-11-28  
我是先完成任务,有时间再考虑重用,灵活的问题,反正有重构嘛.

加一层解决设计问题,减一层解决性能问题.模式与IoC,或者AOP慢慢权衡.
0 请登录后投票
   发表时间:2006-11-28  
if (hasValue) {
  useDesignPattern();
} else {
  dontUseIt();
}

What is value? How much effort will cost you to implement and maintain a design? What is the benefit of the design? Then, the diff between the two, is the value.
0 请登录后投票
   发表时间:2006-11-28  
其实这个问题
主要还是针对一些初中级的程序员(我个人也是)
因为我觉得这个时候,因为经过一两年的学习,有了开发经验
有了设计的概念,总想做一些好的设计出来,但是并不是把一堆模式放在一起就会有好的设计,所以算是给自己以及其他的朋友提个醒!
0 请登录后投票
   发表时间:2006-11-28  
一百个支持啊,不要说初级程序员,有些公司的高级程序员做出来的程序号称用了n多模式和顶尖技术,结果搞的狗不像狗,猪不像猪,让人很难维护,哭笑不得啊。
0 请登录后投票
论坛首页 入门技术版

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