以删减代码成为大师

作者: 博神   来源: 起点中文网   发表时间: 2008-07-03   人气: 0

本文章共1932字,分2页,当前第1页,快速翻页:
 

以删减代码成为大师

 

柳鲲鹏

http://quantum6.vip.bokee.com

2008-07-02

 

关键字:删减 代码 技术

简介:吾成为世界首席OFFICE解析和计算大师,不是靠着什么架构、设计或者思想起家的,而是靠着大批大批的删减代码起家。

 

 

  一个技术群里讨论编程问题,有人问起大家写了多少代码。吾听了哑口无言,因为一方面固然因为吾觉得自己写的代码不多,但主要的,吾认为这种写了多少代码并没有什么意义。一个人写得代码越多,并不一定就代表他的工作越多,更不代表他的水平越高。这并不是什么酸葡萄心理,而是有实实在在的体会。

  人有一个特性,总是把自己的一些体会作为经验,自然的投射到其他人身上。所以吾认为自己写代码的各种体会,别人也理所当然的应该如此。可惜的是,现实教育吾,并不是这样的。有些吾看来是理所当然的事情,别人看来是不可理解的或者无法做到的事情。比如吾从来没有拷贝代码的习惯,自己的代码总是精简的。那么别人就应该是这样吗?事实证明,不是。

  吾印象中在永中第一次大规模删除别人的代码,是针对CDKEY验证系统。记得当时吾看到这些代码,当场吓了一跳。访问同样一组注册表信息的代码,至少有三套。吾动手删减代码的时候,对方威胁说“汝表乱改,改错了汝可负责不起”。吾会被汝吓住吗?立即动手对比了代码(可以看出吾很细心的),设计好参数,一声令下就全部删除了。同时吾做的事情,还包括把这些代码中的常数定义成常量——这在吾看来也是理所当然的事,但别人就是不做。

  在后来负责了质保工作,这种代码看得更多了。吾非常奇怪,为什么就吾知道这些代码是重复的?总不是他们也知道,但就是喜欢这样吧?吾指出这些东西,别人就认为吾是在说他水平低,而他认为自己水平很高。这并不仅是指普通程序员,还包括那些所谓的高手。

  后来质保的头目位子终于混不下去了(据官方说法是吾不会处事,老是得罪人),改为负责OFFICE的解析和计算两大功能。在接手的时候,相关经理说“这个功能很稳定,如果都象这个功能就好了”。由于这个功能跟著名难学的编译原理相关,吾一时心里也没底,认为这个东西肯定很复杂难度也很高。结果到了吾之手上没有几天,就发现这个有几个所谓高手搞的东西,实在是看不下去了。原因就是重复代码太多:解析本身有几套,同样功能的地址类超过了10个,地步解析器也有多个分散在不同地方,计算主流程和函数代码充斥了无数的重复。最后一点连后来负责函数的王清也看不下去了,号称要简写两万行代码。不过要保证在正确性上达到微软的水准,必须依靠世界首席OFFICE解析和计算大师重新设计的世界第一的解析和计算架构。因为函数是从属并依赖于这两大架构的。

  自从吾花了两年完成了OFFICE的解析和计算两大架构的研究、设计、开发、测试之后,吾的自信心就无限膨胀起来:原来要成为世界首席大师,达到微软的水平,对吾来说实在没有什么难度。达到这个目标的首要本领是什么?跟那些成天鼓吹什么架构、设计或者思想的夸夸其谈之流、高谈阔论之辈们完全不同,吾赖以起家的,就是删减代码!大批大批的删减代码!在删减大量代码之后,吾就迅速进入理论架构大师的工作,这可是实打实的理论和架构,可不是那些成天空对空的人能够想象的。

  记得以前吾刚进公司不久,有一次小组开会吾看别人的代码,吾一边看一边删改,看得他们目瞪口呆。他们不明白吾何以知道这些代码可以删,可以改,而且边看就可以边改。但吾认为这些代码的意思不是清清楚楚的吗,删改一下有什么奇怪的?现在想想,可能真的值得奇怪。要不,为什么吾总是大量的删除别人的代码?

  当然,删除代码会出错,这一点常出现。但是这不能成为不删减的理由。只要是工作,都可能出错,这是不可能避免的。当代码减少时,维护起来更加方便;出了错,也能够更快的了解相关的功能。

  

  顺便给一些建议。

本文更多内容1 * 2 * 下一页>>

上一篇
下一篇
相关评论: