编程语言/命名
< 编程语言
引言
原则[1]:
- 选择专业的词汇
- eq: 如果是获取一个缓存网页,使用
getPage不如fetchPage、downloadPage更语义化。
- eq: 如果是获取一个缓存网页,使用
- 选择更具表现力的词汇
- 避免模糊的词汇
- eq:
tmp、retval、get、等。
- eq:
- 避免简洁的词汇
- 避免使用过长的词汇
- 作用域内可适当使用短词汇
- 适当缩略词汇
- eq:
string->str、array->arr、等。
- eq:
- 附带更多信息在词尾
- eq:
_ms毫秒、_secs、_mb、_kbps、等。
- eq:
单词补全
在众多编辑器中,大部分都集成了单词补全功能。
| VI | Ctrl + p | EMACS | esc + / | ECLIPSE | Alt + / |
|---|---|---|---|---|---|
| INTELLIJ IDEA | Alt + / | WEBSTORM | Alt + / | TEXTMATE | Esc |
组成
使用大写、小写、数字、中划线(-)、下划线(_)、等组成。
格式
区间
- 使用
min、max表示极限。 - 使用
first、last或begin、end表示范围。
布尔
确保语义明确。
命名方法
匈牙利表示法
其他
函数命名
普通函数命名
构造函数首字母应该小写[2]。
var nowDateStrLength = dateStrLength(nowDate); // dateStrLength is a ordinary function.
构造函数命名
构造函数首字母应该大写。
var nowDate = new DateFormat(); // DateFormat is a constructor function.
常量
使用驼峰命名法。
var contentLength = 100;
变量
类
类成员变量
与普通变量相似,但以下划线( _ )结尾。 eq:
var offset_;
宏
在 python 中定义宏。
#define MACRO_NAME
实例
| of还是for | 示例 | 示例 |
| 示例 | 示例 | 示例 |
| 示例 | 示例 | 示例 |