现在的位置: 首页 > 综合 > 正文

代码糟糕之路(一)— 破窗理论

2012年02月19日 ⁄ 综合 ⁄ 共 899字 ⁄ 字号 评论关闭

版权保留,转载请注明出处:http://www.cnblogs.com/qingquan

这一段想总结一下之前的东西,因为之前做了一个比较快的项目,项目不大,但人员流动性比较大出现了一些比较典型的现象,在此将这些现象记录下来,以备以后查看同时也和大家一起讨论一下。

破窗理论:一个房子如果窗户破了,没有人去修补,隔不久,其它的窗户也会莫名其妙地被人打破;一面墙,如果出现一些涂鸦没有被清洗掉,很快的,墙上就布满了乱七八糟、不堪入目的东西;一个很干净的地方,人们不好意思丢垃圾,但是一旦地上有垃圾出现之后,人就会毫不犹疑地抛,丝毫不觉羞愧。

在日常的代码工作中,尤其在对新加入公司的员工,因为他们对当前公司的代码规范不是很熟悉。在代码编码过程中可能有意无意的带来了他前一个公司的一些编码习惯,但这些编码习惯可能和当前公司的编码习惯不是很一样。例如:当前A公司的C语言编码规范是采用把起始大括号放在行尾,而把结束大括号放在行首。缩进采用4个空格的方法。但是新来的一个员工,因为没有很好的遵守规范带来了之前编码习惯,这时他有可能在更改一段之前代码的时候:

if (x is true) {

   we do y
}

将这段这段代码改为:

if (x is true) {

    do

    {
        body of do-loop
    } while (condition);
}

这样整个代码风格就开始发生变化,之后由于一不小心将4个空格按成一个tab键,这样整个代码风格就开始面目全非。

之后又有一次因为紧急情况,因为工作时间紧急抽调一个新人对上面的代码进行修改。因为新人可能也没有考虑整个代码的风格,对命名规范吃的不是很准确,如果他在他的编辑器里面把tab键的长度设置为8个空格这样看起来整个代码已经是混乱一片。这时如果再有第三个人更改这段代码的时候,公司的代码规范的约束力已经无形中被削弱了很多。这样代码混乱的情况就会从代码格式进而扩展的命名规则,代码注释等方面。这样这段代码再经过几个人的更改而没有整理和重构的情况下将很快会变的异常混乱。这段代码就会像一个破了一块玻璃的房子一样,很快变的面目全非。

下一篇可能着重从高人员流动情况下对代码的影响。

抱歉!评论已关闭.