编码规范

一、为什么需要编码规范
编码规范不是束缚,而是一种“让代码可被他人读懂”的约定。Google C++ Style Guide 开篇就指出:随着代码库的膨胀,代码的可读性和可维护性远比写代码时的便利更重要。在团队协作中,规范的命名、统一的格式和恰当的注释能让新成员快速理解代码意图,减少沟通成本。代码规范的核心目标可以概括为三点:一致性、可读性、可维护性。

二、几种主流编码规范

  1. Google C++ Style Guide
    适用范围最广的 C++ 规范之一,被大量开源项目采用。其核心原则是 “Optimize for the reader, not the writer”,即优化阅读者的体验而非写代码时的便利。具体规则包括:

文件命名:全小写,用下划线或短横线分隔,如 my_class.cc

类型命名:PascalCase,如 MyClass

函数命名:PascalCase

变量命名:snake_case,类成员变量末尾加下划线

  1. 阿里巴巴 Java 开发手册
    国内影响力最大的 Java 规约,覆盖编程规约、异常日志、单元测试、安全规约、MySQL 数据库、工程结构、设计规约七个维度。规约分为强制、推荐、参考三级,每条都配有“正例”和“反例”说明。例如“方法参数类型必须一致,不要出现自动装箱拆箱操作”就是一条强制规约,因为可能导致难以排查的空指针异常。

  2. openUBMC C++ 编码规范
    华为 openUBMC 社区维护的 C++ 规范,优先适用于 C++17 版本。命名规则明确:类/结构体用大驼峰,函数/变量用 snake_case,常量全大写下划线分割。缩进要求 4 个空格,行宽限制 80 字符。注释规范尤其细致:注释放在对应代码上方或右侧,注释符与内容之间要有 1 个空格。头文件必须使用 #define 保护,禁止循环依赖。

  3. 通用最佳实践(语言无关)
    不绑定特定语言的原则包括:变量名用具有描述性的英文单词,函数名用动词短语;函数尽量短小(通常不超过 20 行),嵌套不超过三层;遵循 DRY 原则(不写重复代码);提交信息使用 feat: / fix: / refactor: 等前缀。

三、我采用的风格
本学期我以 openUBMC C++ 编码规范为主,辅以通用最佳实践。

posted @ 2026-10-13 19:41  TheWorld_23  阅读(3)  评论(0)    收藏  举报