变量名命名不规范引起的bug的问题和思考_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 变量名命名不规范引起的bug的问题和思考

变量名命名不规范引起的bug的问题和思考

 2014/11/8 22:07:46  nergpchen  程序员俱乐部  我要评论(0)
  • 摘要:今天在调试一个bug的时候,花了将近半个小时的时间,而最后发现原因是由于两个变量名相近,参数传递错误了引起的,真的是狂吐血。因此感觉到命名规范的必要性和重要性。一:让代码更易阅读良好的变量命名习惯或者规范可以让代码更加容易阅读,逻辑更加清楚,更加容易维护和修改。比如定义了一个变量Stringkey;Stringlogin_key:那么第一个key到底是什么意思不是非常清楚,而第二个long_key表示是和登陆有关的,意思就是更加的准确了,但是loging_key到底是什么意思呢
  • 标签:问题

? 今天在调试一个bug的时候,花了将近半个小时的时间,而最后发现原因是由于两个变量名相近,参数传递错误了引起的,真的是狂吐血。因此感觉到命名规范的必要性和重要性

? 一:让代码更易阅读

??????? 良好的变量命名习惯或者规范可以让代码更加容易阅读,逻辑更加清楚,更加容易维护和修改。

??????? 比如 定义了一个变量 String key ; String login_key :那么第一个key到底是什么意思不是非常清楚,

而第二个long_key 表示是和登陆有关的,意思就是更加的准确了,但是loging_key 到底是什么意思呢?

假设你是第一次阅读代码的话,如果没有注释的话,可能还不是非常的准确. 比如这个变量String l ogin_user_key。那么可能就是更加清楚了,这个表示的是登录用户的唯一值。

???? ??????

?二:让代码更加容易调试。

??????? 一般系统的代码变量都非常的多,参数也是比较多的,那么在这个情况下,清晰准确的变量命名就显的非常的关键,今天这个发生的错误就是方法的参数名和类的静态变量的参数名接近,导致了参数写错了。

?

? 那么 通常在什么情况下会发生这类错误呢?

? 一:对英文不熟悉。

????? 由于变量是用英文字母命名的, 由于可能对英语的不熟悉,所以在定义某些变量的时候,命名不准确,导致发生了歧义。

? 二:代码复杂

???????? 复杂的代码涉及到的临时变量,参数变量,静态变量比较多,有些变量可能比较相近,而且在开发中,

追求速度,不会在变量上费时间,所以特别在临时变量或者方法中的参数中变量命名相对比较随意,所以可能会发生参数变量写错的情况。

? 三:没有良好的变量命名规范意识

???????? 在这以前,也阅读过Google代码规范,里面也提到过变量的命名规范,但是一个习惯不是非常容易的养成, 所以在紧张开发的情况下,意识不到规范命名变量,而且在开发中,认为变量命名的规范对代码的性能几乎没有任何影响,所以也就出现了某些变量命名随意的情况。

所以要有培养自己的变量命名规范意识和习惯。

?

那么如何养成良好变量命名的习惯呢?

?? 一:具有规范意识

????????? 首先要认识到变量命名规范的重要性,假设你认为变量的命名不重要的话,可以随意命名的话,那么是不可能具有良好的变量命名习惯的。

?? 二:阅读源码

?? 阅读一些开源的源码,比如JDK源码、Struts源码等等,学习这些开源程序是如何命名的。然后可以把自己以前写的代码和这些优秀的源码进行比较,看看差距在哪里,然后在以后写程序中慢慢改进。

? 三:一些规则

?? 可以阅读这篇文章GoogleJava编程风格指南来学习一些规范,然后应用到开发中。

我想通过这些步骤,有意识的加以训练和修正,我想很快就可以写成具有易阅读、易维护的漂亮的代码的。

?

?

?

发表评论
用户名: 匿名