15 个变量和方法命名的最佳实践

红薯 发布于 2012/02/21 15:00
阅读 6K+
收藏 79
15 个变量和方法命名的最佳实践
  1. 在每个代码范围内使用足够短和足够长的名称:例如循环计算器用一个字符就可以了,如i;条件和循环变量用一个单词,方法名1-2个单词,类名2-3个单词,全局变量3-4个单词组成
  2. 为变量指定一些专门名称,不要使用例如 "value", "equals", "data" 这样的变量名
  3. 变量名要使用有意义的名称,通过变量名能大概反映出其具体的用途
  4. 不要在变量名前加前缀,例如 o_, obj_, m_ 之类
  5. 服从公司命名规范,在命名时使用一致的做法,例如:txtUserName, lblUserName, cmbSchoolType, ... 除非是大大降低了可读性
  6. 服从编程语言本身的规范,不要使用不连贯的小写和大写混合名称,例如:userName, UserName, USER_NAME, m_userName, username, ...
    • 对 Java 而言:
      • 类名使用驼峰命名方式,如:VelocityResponseWriter
      • 包名小写:net.oschina.beans.xxx
      • 变量名小写开始的驼峰命名,例如:studentParentName
      • 常量名用全大写:MAX_PARAMETER_COUNT = 100
      • 枚举类名参考普通类名,枚举变量使用全大写
      • 不使用任何带下划线的命名方式(OSCHINA项目大量采用带下划线的变量,哈哈),除非是常量或者是枚举值
  7. 不要在同一个类的不同上下文中重用相同的变量名
  8. 不要在一个方法内用同一个变量做不同的用途
  9. 不要使用非 ASCII 字符的变量,例如中文变量
  10. 不要使用太长的变量名,例如50个字符,这很难阅读,而且可能超出一些编译器的限制
  11. 确定并坚持使用固定的一种自然语言的命名方式,例如不要使用拼音和英文混合的命名方式
  12. 方法名要使用有意义的名称,能通过方法名大概了解该方法的用途,而且方法名要以动词开始,例如createPasswordHash
  13. 方法名要符合公司统一的规范,例如:getTxtUserName(), getLblUserName(), isStudentApproved()
  14. 方法名要遵循编程语言规范
  15. 方法的参数名要使用有意义的名称

via codebuild

加载中
1
胖猫
胖猫
一个方针:要使代码易读
0
极品渣子
极品渣子
这一定要掌握。
0
da54ng
da54ng
这个是最基本的~
0
曾生在线
先看一下先。
0
无壳蜗牛

4.不要在变量名前加前缀,例如 o_, obj_, m_ 之类

这点不符合我的习惯,类成员变量总是用 m_打头的,没前缀的变量,让我在函数里要睁大眼睛看是局部量还是成员变量。

skysky
skysky
@Hongbin Wang : 这几种命名法有什么优缺点了?我做过一次命名法的比较,没发现明显的优缺点,除了风格,似乎没实质的影响!
申江渔夫
申江渔夫
成员变量前尽量加上this
Hongbin Wang
Hongbin Wang
匈牙利命名法有优点也有缺点。基本上主流的Java编程规范,都是不推荐匈牙利命名,而是使用驼峰。
0
刘冲
刘冲
不错啊!
0
曼灵格
曼灵格
最不喜欢m_xxxx这种命名方式,基本上是从vc继承过来的,现在的开发工具都可以以指定的颜色显示成员变量还是本地变量的
0
理工男海哥
理工男海哥

在补充几句:

List定义的变量应该 List 作为后缀结尾。

Map定义的变量应该 Map 作为后缀结尾。

数组定义的变量应该 s 作为后缀结尾。

类成员变量是用 m打头。

0
醪糟儿蛋
醪糟儿蛋

引用来自“曼灵格”的答案

最不喜欢m_xxxx这种命名方式,基本上是从vc继承过来的,现在的开发工具都可以以指定的颜色显示成员变量还是本地变量的
++
返回顶部
顶部