0%

代码整洁之道

时刻保持初心,保持代码整洁

变量命名规则

  1. 名副其实,见名知意
  2. 避免误导
  3. 做有意义的区分
  4. 使用读的出来的名称
  5. 使用可以搜索的名称
  6. 避免使用编码
    1. 成员前缀
    2. 匈牙利语标记法
  7. 避免思维映射
  8. 类名
    1. 类名和对象名应该是名词或名词短语
    2. 类名不应当是动词
  9. 方法名
    1. 方法名应当是动词或动词短语
  10. 别扮可爱
  11. 每个概念对应一个词
  12. 别用双关语
  13. 使用解决方案领域的名称
    1. 给这些事取个技术性的名称,通常是最靠谱的做法。
  14. 使用源自所涉问题领域的名称
  15. 添加有意义的语境,不要添加没用的语境

函数的定义规则

  1. 短小 函数的第一规则是要短小。第二条规则是还要更短小。
  2. 只做一件事
  3. 每个函数一个抽象层级
  4. switch语句
  5. 使用描述性的名称
  6. 函数参数
    1. 最理想的参数数量是零(零参数函数),其次是一(单参数函数),再次是二(双参数函数),应尽量避免三(三参数函数)。有足够特殊的理由才能用三个以上参数(多参数函数)—所以无论如何也不要这么做。
    2. 标识参数丑陋不堪。向函数传入布尔值简直就是骇人听闻的做法。这样做,方法签名立刻变得复杂起来,大声宣布本函数不止做一件事。如果标识为 true 将会这样做,标识为 false 则会那样做!
  7. 无副作用
    1. 输出参数
  8. 分隔指令与询问
  9. 使用异常替代返回错误码
    1. 抽离 Try/Catch 代码块
    2. 错误处理就是一件事
    3. Error 依赖 enum
  10. 别重复自己
  11. 结构化编程

代码命名规范

这是自己定义的一个代码书写规范,可以用作参考

类型 说明
文件命名 全小写,可以包含下划线 _ 或者连字符 - ,尽量使用 _
类型命名 类或结构体命名使用驼峰式,每个单词首字母均大写
变量命名 一律小写,单词之间使用下划线连接
类/结构数据成员命名 一律小写,单词之间使用下划线连接,但是需要名称末尾接下划线
常量命名 对于 const 变量,或者在程序运行期间值不变的,命名以 k 开头,每个单词首字母大写
函数命名 使用大驼峰式,每个单词首字母均大写
类/结构方法命名 使用小驼峰式,除了首字母以外每个单词首字母均大写
枚举命名 使用全大写,单词之间使用下划线连接
宏命名 使用全大写,单词之间使用下划线连接