13、函数名和变量名的命名
2004-10-12 00:31
267 查看
————————————
我看到许多程序对变量名和函数名的取名很草率,特别是变量名,什么a,b,c,aa,bb,cc,还有什么flag1,flag2, cnt1, cnt2,这同样是一种没有“修养”的行为。即便加上好的注释。好的变量名或是函数名,我认为应该有以下的规则:
1) 直观并且可以拼读,可望文知意,不必“解码”。
2) 名字的长度应该即要最短的长度,也要能最大限度的表达其含义。
3) 不要全部大写,也不要全部小写,应该大小写都有,如:GetLocalHostName 或是 UserAccount。
4) 可以简写,但简写得要让人明白,如:ErrorCode -> ErrCode, ServerListener -> ServLisner,UserAccount -> UsrAcct 等。
5) 为了避免全局函数和变量名字冲突,可以加上一些前缀,一般以模块简称做为前缀。
6) 全局变量统一加一个前缀或是后缀,让人一看到这个变量就知道是全局的。
7) 用匈牙利命名法命名函数参数,局部变量。但还是要坚持“望文生意”的原则。
8) 与标准库(如:STL)或开发库(如:MFC)的命名风格保持一致。
我看到许多程序对变量名和函数名的取名很草率,特别是变量名,什么a,b,c,aa,bb,cc,还有什么flag1,flag2, cnt1, cnt2,这同样是一种没有“修养”的行为。即便加上好的注释。好的变量名或是函数名,我认为应该有以下的规则:
1) 直观并且可以拼读,可望文知意,不必“解码”。
2) 名字的长度应该即要最短的长度,也要能最大限度的表达其含义。
3) 不要全部大写,也不要全部小写,应该大小写都有,如:GetLocalHostName 或是 UserAccount。
4) 可以简写,但简写得要让人明白,如:ErrorCode -> ErrCode, ServerListener -> ServLisner,UserAccount -> UsrAcct 等。
5) 为了避免全局函数和变量名字冲突,可以加上一些前缀,一般以模块简称做为前缀。
6) 全局变量统一加一个前缀或是后缀,让人一看到这个变量就知道是全局的。
7) 用匈牙利命名法命名函数参数,局部变量。但还是要坚持“望文生意”的原则。
8) 与标准库(如:STL)或开发库(如:MFC)的命名风格保持一致。
相关文章推荐
- 如何给你的函数变量命名
- (clean code 阅读笔记)变量、函数、类的命名规则
- c、c++变量和函数命名规范
- 『转』 函数、变量命名方法
- C# 命名空间、类、函数、变量的关系
- 浅析C 语言变量和函数命名规范
- HM代码中关于变量、函数的命名规则
- 变量,函数要不要用中文命名?
- 数据结构:(更新中)成员变量、成员函数和实例一般命名和定义方法
- C语言变量和函数命名规范
- python 函数 本地变量 函数的命名空间 变量的作用域
- 变量、函数、类的命名规则
- 变量命名,函数命名常用单词
- 《笨办法学Python》习题18:命名,变量,代码,函数
- python的类中变量、函数的特殊命名--意义
- opencv库C版和C++版的函数和变量命名差异分析
- Exercise 18:命名,变量,代码,函数
- Learn Python The Hard Way学习(18) - 命名,变量,代码,函数
- X3全局变量及公共函数所在的命名空间说明
- 7_13发现了一个小问题为啥在do_line函数里赋值语句在变量定义语句之前就会报错?