关于重构

      今天听到一同事刚接手一个旧的系统后,就说之前的代码太烂、要重构之类的,不觉哑然失笑。单单粗略的看了看就下结论,这是很不明智的做法。有可能这个系统某些功能确实要这样特殊处理,而不能按正规的设计来编码,也有可能是只有这样设计才是最合适的。

      常常听到同事说要对别人的旧代码重构,也许程序员都有排外的思想,看到不是按自己思路走的代码一律看不顺眼,也许等改完后才觉得之前的旧代码才是最合适的,那时才是有苦难言。更有甚者,把旧代码改几句就说重构了代码,这就纯属是骗人眼球的了,他会觉得”重构“这词儿怎样说也是一种高级的东西了,说出去会让人肃然起敬的。对于这种情况,只能苦笑。

      对旧代码怎样处理,那就见仁见智了。

      当看到旧的代码设计不合理的时候,首先要进行深入的分析。有可能是当时设计代码时由于时间不足,只能按照先完成再优化的思想去进行。也有可能是不得不这样去解决某种特殊的问题。更有可能是这样设计才是最好的。

      鄙人认为,程序设计,不是要追求最好的,而是要最合适的。当你要用一种非常漂亮的设计来实现某个功能需要N天,而用普通的设计用N/2天就能完成,并且普通的设计并不能影响整个程序的效率时,选择后者往往是最合适的。当普通的设计有可能影响到程序的效率,但又在时间有限制的情况下,这就要进行充分的考虑分析后才能取舍了。

      想起了“高射炮打蚊子”的例子。例如让一个资深的程序员去做游戏客户端逻辑代码的编写,这就是暴殄天物了。

      说不定某天自己也要进行”重构"工作,看来要好好考虑考虑了。

posted @ 2010-10-28 13:11  毛志谦  阅读(134)  评论(0编辑  收藏  举报