嵌入式编程守则
目的
制定编程守则的目的确保团队代码的质量并保持一致性。
原则
- 编程守则应当清晰明了,避免模棱两可的表述,确保每位开发者都能理解和执行。
- 具有明确的改进方法
- 编程守则要简洁,相较于制定大量的规定,落实更重要。
编程守则
编程守则 | 改进方法 |
---|---|
不写重复代码 | 提取函数 |
不使用魔法数 | 宏定义、const 变量、枚举 |
函数体不大于 80 行 | 提取函数 |
函数参数不大于 4 个 | 功能分离 一组参数使用结构体封装 |
函数嵌套不大于 3 层 | 卫语句 提取函数 |
函数圈复杂度不大于15 | 提取函数 |
表达式的操作数与操作符之和不大于 10 | 提取函数 分为多个语句 |
全局变量不超过 20 个 | 用静态变量代替 结构体封装 函数封装 |
要遵循单一职责 | 一个变量一件事 一行代码一件事 一个循环一件事 一个函数一件事 命令查询分离原则 |
或许你看完后第一印象是:这些守则会不会太普通了?
方法本来就都很普通,难就难在达成目标。想减肥就要运动,想掌握 Linux 就多学多练。真正的挑战从来不是知道什么,而是坚持不懈的做成什么。
我在代码评审中,主要就看这些内容。如果一个程序完全符合上述编程守则的要求,那么这个程序就会很简洁。任何一个函数,都可以明显看出是否有问题,而不是分析很久后,给出没有明显问题的结论。