`
El_Nino
  • 浏览: 201364 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

编程恶习

 
阅读更多

一, 程序没有注释
注释!!注释!!! 如果只是打印了一个HELLO WORLD, 您不注释那也就算了, 如果是只有一两百行的小功能类您不注释, 那我也忍了, 可是3000多行一个类的业务逻辑代码, 您老人家还不注释!!! 你TM让我怎么去改代码, 一点业务逻辑的说明都没有, 我改代码的时候,得一边用DEBUG调试, 一边替他加注释。 然后才能进行自己的工作。 几千行的一个类, 一行注释都没有, 你TM就不觉得颜色单调了点吗?

二, 不遵守基本的编程约定
变量名大小写混乱, 明明是变量, 非要完全大写, 要不就大写开头。 要不就是方法名全是大写, 最牛B的一个方法是用中文做方法名, 你丫这时候想起打中文来了, 累不累呀。
还有人用拼音做变量名方法名,就算您英文不好,稍微查一下金山词霸行不行,现在百度和GOOGLE都有翻译功能,稍微查一下英文,也当是学英语了行不行? 您实在太忙的话,不查也就算了,拼音就拼音吧,好赖也算是中国话的。 可是您就别用拼音简写了,英文简写还认不出来呢, 您还用拼音的开头字母当变量名, 那我TM上哪儿猜去呀!

三, 不明就里的代码
系统中经常会出现这样的代码,尤其是在controller里居多:
// some code
If(flag .equals(“submit”)){
model.getInfo();
}else{
model.getInfo();
}
我没写错,if和else调用的方法完全一样,大家也放心,我仔细的看过调用的代码,调用的方法里,也没有根据其它情况来改变他的运行路线。我就不明白为什么要做这个if判断了。担心会有什么特殊的业务逻辑, 所以也不赶随便去改他。 猜了半天,感觉最理想的答案是写代码的人,担心以后会有新的逻辑分支, 所以在这里用if预留了一个位置, 以后改的时候方便。
数日之后有幸遇见了当初写这代码的老兄,问过之后立刻晕倒,原来是这个代码是参照别的模块的样子写的,别的模块在这里都有N个程序分支,通过if来判断后决定调用哪个model里的方法。但他这个模块很简单,没有什么分支,就是调用那一个方法,但他写代码时,看别人的模块在这里都进行if判断了,所以觉得自己也应该判断一下,于是就出现了上面这样的代码。

四, 面向过程式的编程方法
遇到过好几次2000多行的方法,所有业务逻辑,一气呵成,就用了一个方法搞定。如果是简单的逻辑也就算了, 可是几千行的代码全放在一个方法里,一个类里有无数的重复代码。 这回到好,重构那本书没白看, 现在有了实践的机会了。
难道您自己调试的时候就不觉得麻烦吗? 我在这里不想讨论什么面向过程还是面向对象,也别和我说什么方法多了也不一定就是面向对象的思想。 平时对自己写的代码多上点心, 大家都是在这行干了几年的人了,把代码写的漂亮点有什么不好。

五, 代码缩进混乱
我们公司有规定,改代码的时候,不许修改原有代码的格式。 不管他多乱,也不许改。 我不明白这是为什么,也许是检查代码的人,要用文件比较工具吧。
但这下苦坏我了, 代码的格式那叫一个乱。 有顶着行头写的, 有向后空了N格的,大概是写代码的人, 为了方便自己找到正在调试的那段代码,所以把代码的缩进变得和其它代码与众不同吧。 那您调试完了到是重新排一下版呀, 这真的不累~~, 现在的IDE工具都有自动排版代码的功能, 一个快捷键就搞定了,稍微勤快一点行吗??
最BT的一段代码是缩进居然出了屏幕!!! 你吃饱了撑的呀, 没事缩那么远干吗, 我根据后台输出找了半天也没找到那段代码在哪儿, 原来是因为缩进的太远了,不在屏幕范围之内, 向右拉了半天滚动条才找到。 你丫是不是写着代码睡着了? 脸正好砸在TAB键上。

六, 多余的后台输出
好几个循环嵌套在一起~~~ 也行, 就算是因为业务逻辑需要,没别的办法也将就了。 好几个循环嵌套在一起查数据库, 咱们最好还是开动一下脑筋, 看看有什么更好的办法。如果还是没别的办法, 那也凑合了。 可这种情况您就别在后台输出SQL语句啦, 每次一执行程序,成百上千个SQL语句在后台输出, 查数据库才用了一两秒,结果输出这些SQL就用了半分钟。 您自己就没觉出程序慢在哪里吗? 您调试程序的时候输出一下也就算了, 提交到正式运行的环境时,就麻烦您,劳您大驾~~ 把那些输出注释掉吧,实在不行留几个重要的输出就行了。 让这种代码影响系统性能~~ 也太冤了吧。

七, 打肿脸充胖子
我也不知道这条算不算恶习,也许不算,在有些人眼里还是好事。但也要看具体情况,经常有些人写代码不喜欢用IDE,只用EDITPLUS这类工具。按常理说,初学者都应该尽量用这些编辑器写代码,对加深学习印象有好处。也有人说高手不屑于用那些IDE,我少见多怪, 这种绝顶高手我没见过。
但咱平时工作的时候,要的是效率,您不是那种高手就乖乖的用IDE吧。经常见到有些人,为查一个方法的调用,搜来搜去的。真正的高手是工作效率最高的人,不是用最简单工具的人。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics