头发还是面子


恐怕几个同事最近听我的吐槽已经要开始厌倦了,于是我决定一劳永逸地把遗留代码里的渣元素写在这。

可怕的缩进

你会怎么评价代码中混合使用空格和Tab作为同一行的缩进?业余?无知?如果同时因为别的奇怪原因连 jsbeautifier都没能成功地把这坨代码给格式化呢?如果代码作者有看上去还不错的工作经历呢?

快乐地无知着

JavaScript的属性名使用下划线开头本来是为了弥补缺少私有属性的问题,或者说本来可以被公开访问但又不希望暴露为API的一部分的属性才会这样命名。但是被塞在函数私有作用域里面的变量名有必要这么搞吗?而且有一个还是构建函数名!?

简单模仿确实是动物本能,但我们毕竟有过高度进化的(吧)。

Simply fuck you up

来看这么一段:

if (!iserr) {
  alert("有误")
}

错误信息被我简化了,但原文确实是表达“有误”无疑。如果你想把同事折腾死,在他/她项目紧张的时候再添点乱,这种代码就是榜样。

Mofo patch

Ruby 所支持的“随时打开一个类/模块的作用域”能力叫做 monkey patch。把未经完整测试的代码塞进原本可信的第三方组件顺便大幅度修改其行为就是 mofo patch 了。我有没有提到说这个文件的版本历史都已经被不会用svn mv的菜鸟给弄丢了?

恐怕程序猿的多疑大半来自这些操蛋的经历而非天性吧。

在遗传和熬夜的影响下我本来已经明显脱发,现在我实在不想用自己的头发去顾及别人的面子了。我要开始留心收集不粗俗但又足够伤人的贬义词用来在 code review 时使用,“业余”是个好的开始。

顺便我没有时间修正 JSLint 的警告,特别是没有分号结尾的语句。