个人行为与观念 - 要比他人更加上心 ¶
作者:KK
发表日期:2016.5.28
在一个个方面超越身边的人真的挺有成就感,这是一种竞争的现象,我也是其中一份子
我希望与更优秀的人工作,让我追赶他,让他追赶我,让我们互相促进
有些事情其实要超越他人其实并不困难,而难却难在有没有这个思想
而已,我是有的人
举个粟子: ¶
某页面需要一个效果,大家一看就想到直接上网下某个插件来实现即可
于是员工A执行这件事时就上网下载了插件,部署好写好代码就这提交了
当我审核代码时发现他的实现就是直接复制了官方的演示代码并且改了一个dom的ID,其它无关的代码一个都没有删除掉,代码形态大概是这样的:
$('#XXXX').yyy({
"a" : 1,
"b" : 60, //XXX峰值,默认为60
"c" : true, //是否执行XXX,默认为true
"d" : function(data){
//...
}
});
可以说这里的b和c配置是不需要的,因为默认值就是那个
这里我能判断他可能在这样考虑以后方便别人修改
,但其实这样考量是错误的
如果留下备注是为了方便别人修改时快速知道是什么意思怎么改,那么我们项目中还有多少代码调用了各种插件,是不是把各个参数的官方说明都以注释的形式填在这里?要知道用法就应该看手册,而不是把手册冗余一份在这里,除非这个配置比较特殊需要特别声明,但这种情况实在是很少
留下值的配置也是,如果这样留的话那么这个插件其实还有N多默认值呢,不止这个插件,还有其他的代码也是,不可能全部默认值都列出来,为什么在这里又单独留下这个插件的一些默认配置呢?
3年经验以上的程序员都可以思考一下:通常我们以往所谓的"留着方便以后修改"其实往往都等不到被修改的那天
我会将以上代码精简成如下:
$('#XXXX').yyy({
a : 1,
d : function(data){
//...
}
});
其中我还把配置里key的双引号去掉了,因为其实有没有双引号都是一样的,为什么不用更简洁的写法,非得让代码为得繁杂呢?(其实当时公司的代码规范也有要求key尽量不要写引号的)
这是我的思维,能不写的就不写
附文: 我们要惜字如金
对这些人而言,他们的想法往往是上网找个插件,复制个demo代码改一下能跑起来就完事
对我来说会考虑得更多,我会审视demo的每一个代码在干什么,有没有必要存在,是否符合公司的代码规范,排版要不要修正等等
主要是思维上的不同,其实要把这个代码精简的话,说一下谁都会做,但不说的时候主动去做,那就要靠自主的思维驱动了