时刻保持初心,保持代码整洁
变量命名规则
- 名副其实,见名知意
- 避免误导
- 做有意义的区分
- 使用读的出来的名称
- 使用可以搜索的名称
- 避免使用编码
- 成员前缀
- 匈牙利语标记法
- 避免思维映射
- 类名
- 类名和对象名应该是名词或名词短语
- 类名不应当是动词
- 方法名
- 方法名应当是动词或动词短语
- 别扮可爱
- 每个概念对应一个词
- 别用双关语
- 使用解决方案领域的名称
- 给这些事取个技术性的名称,通常是最靠谱的做法。
- 使用源自所涉问题领域的名称
- 添加有意义的语境,不要添加没用的语境
函数的定义规则
- 短小 函数的第一规则是要短小。第二条规则是还要更短小。
- 只做一件事
- 每个函数一个抽象层级
- switch语句
- 使用描述性的名称
- 函数参数
- 最理想的参数数量是零(零参数函数),其次是一(单参数函数),再次是二(双参数函数),应尽量避免三(三参数函数)。有足够特殊的理由才能用三个以上参数(多参数函数)—所以无论如何也不要这么做。
- 标识参数丑陋不堪。向函数传入布尔值简直就是骇人听闻的做法。这样做,方法签名立刻变得复杂起来,大声宣布本函数不止做一件事。如果标识为 true 将会这样做,标识为 false 则会那样做!
- 无副作用
- 输出参数
- 分隔指令与询问
- 使用异常替代返回错误码
- 抽离 Try/Catch 代码块
- 错误处理就是一件事
- Error 依赖 enum
- 别重复自己
- 结构化编程
代码命名规范
这是自己定义的一个代码书写规范,可以用作参考
类型 | 说明 |
---|---|
文件命名 | 全小写,可以包含下划线 _ 或者连字符 - ,尽量使用 _ |
类型命名 | 类或结构体命名使用驼峰式,每个单词首字母均大写 |
变量命名 | 一律小写,单词之间使用下划线连接 |
类/结构数据成员命名 | 一律小写,单词之间使用下划线连接,但是需要名称末尾接下划线 |
常量命名 | 对于 const 变量,或者在程序运行期间值不变的,命名以 k 开头,每个单词首字母大写 |
函数命名 | 使用大驼峰式,每个单词首字母均大写 |
类/结构方法命名 | 使用小驼峰式,除了首字母以外每个单词首字母均大写 |
枚举命名 | 使用全大写,单词之间使用下划线连接 |
宏命名 | 使用全大写,单词之间使用下划线连接 |