小聊程序员的素养

DogJay 2017-07-05 174人已围观

最近本奴一直在公司里面做之前别人项目的维护以及bug修复工作,然而,一个月下来,本奴是真的长见识了,成长。我见识了整篇没有注释的代码,也见过直接把实际上线的代码中的变量定义为a,b,c,d,e之类的字母的。然而,我今天见到了真正大神写的代码。不说话,先上图:

如图一所示,是我在控制行打印输出一个id值,有bidPlan.getId()。专业人士可以知道,意思是获取招标计划的id,然而并不是。

我在数据库中查询了这个字段,发现,它在数据库中的属性字段是execute_id。我没学过英语,是不是plan_id与execute_id的意思是一样的?后来我查询了另一个字段plan_id在系统运行的意思——执行计划!!!而bidding的意思是招标计划。握草,这代码还是一个专业的人写的吗?

再者,项目数据库中bidwd_execute_plan_relation是一张关系表,然而,这位前辈在使用的时候,却没用任何关联关系。直接使用二次查询,代码我就不附上了,真心丢人。这个简直就是一个小学生写的。懵懵懂懂一样。

之前阿里云推出了自己的java开发手册中写到杜绝完全不规范的缩写,避免望文不知义。反例: AbstractClass”缩写”命名成 AbsClass;condition”缩写”命名成 condi,此类 随意缩写严重降低了代码的可阅读性。而在我看来,作为一个初始化了的码奴,一个Java工程师,写Java代码过程中是不能害怕变量名或者方法名过长,除非你能找到一个比原先短,并且含义完全相同的更好的命名。而在方法体内的执行语句组、变量的定义语句组、不同的业务逻辑之间或者不同的语义之间插入一个空行。相同业务逻辑和语义之间不需要插入空行。这个也是为了增加代码的美观以及可读性。但是哪怕这些做不到哪怕写一些注释也不错啊。这一个月下来,看到别人的代码先靠猜,然后问,效率大大的降低。而对于公司而言,运维的成本也大大的降低了。

更有甚者,有些人要离职了,在自己的当前项目中,故意不负责任的写一些别人不理解的代码,这样自己走了,别人就理解不了了。妈的!这个最基本的素质都没有了。有一个同事提议给世界上的每一个程序员设定一个id,只要是这个人自己写的代码,这一段代码就会被自动标记,不管这个人到哪里,除非死了,否则一直跟着这个人。我在想,这个提议好,就像人的信用证明一样。只要你活着,你的黑名单就会一直跟着你。这样看你还敢不敢这么没素质提交错乱差的代码给别人。

吐槽(0)

文章评论

    共有0条评论

    验证码:

文章目录