编程命名风格推荐

命名风格

常见命名风格包括

  1. 驼峰命名法(CamelCase)
    • 小驼峰命名法(lowerCamelCase)
    • 大驼峰命名法(CamelCase)
  2. 蛇形命名法(snake_case)
  3. 串式命名法(kebab-case)

其他还包括匈牙利命名法(HN case)、帕斯卡命名法(PascalCase)等。

命名规范

  1. 函数命名, 变量命名, 文件命名要有描述性; 少用缩写.
    • 常见缩写可用,如 i 表示迭代变量和 T 表示模板参数。
  2. 统一命名标准,风格,易于理解放在首位。
    • 谈谈我对编程风格的看法,不同的语言、不同的团队可能都有不同规定的命名风格,但源码在大部分时候都是人在写也是人在看,在运行时就与函数变量写成什么样无关了,所以编程风格面对的是人,易于理解自然摆在首位。目前主流的命名风格是驼峰命名与蛇形命名,驼峰命名由于普及的早,其风格广为人知,应用场景也更为人而知,熟悉的人能通过风格了解使用场景;而蛇形命名更像英文句子,更符合人的阅读习惯,更易理解。两种风格如今都有很多人使用,也有不同的场景,我的建议是,当在团队项目时以团队统一说明规范为主,个人选择编程风格时可以看看接下来我推荐的风格。至于是否会发生混乱,可以以一个风格为主,再利用IDE格式修正或其他格式化工具修正后上传。
    • 推荐蛇形命名的理由,方便键入,易于理解,符合大多数人阅读习惯。并且下划线可以通过键位修改工具使之一键输入。

使用场景

推荐命名规范,参考 C++,Python,Java 语言推荐风格。

要素 风格 场景
项目文件与文件夹 串式命名法(kebab-case 源码中包模块划分另见
类(Class) 大驼峰命名法(CamelCase
函数(Function)、方法(Method) 蛇形命名法(snake_case 风格不一致,可见下文格式化。
变量(Variable) 蛇形命名法(snake_case 风格不一致,可见下文格式化。
常量(Constants) UPPER_CASE_WITH_UNDERSCORES
Python 包(Package)、模块(Module) 蛇形命名法(snake_case 应尽量简短,如果下划线可改善可读性则可加入;文件名采用一样的规则。
Java 包(Package) lowercase 包名以 . 分隔,类似域名的命名采用逆置,并且目录结构也采用 . 分隔方式组织;其中文件名与该文件内主类一致。
C/C++ 源码文件 蛇形命名法(snake_case C 源码文件以 .c 结尾,C++ 源码文件以 .cpp(或 .cc 结尾,没有区别,主流编译器都能识别)结尾,头文件都采用 .h 结尾。

其他要素待更新

风格说明

  • 一般在函数、方法、变量上风格差异很大,主要分为小驼峰命名法与蛇形命名法。
  • 风格描述采用第一节说明的命名风格与 Python PEP8 中描述的风格。
    • UPPER_CASE_WITH_UNDERSCORES:全大写,单词间用下划线分隔。
    • lowercase:全小写。

格式化

此节为了解决个人风格与团队风格不一致情况下,如何在不改变个人风格的前提,使用格式化工具统一团队风格。

待更新

参考资料

  1. 10分钟了解代码命名规范(Java、Python)
  2. C++ 风格指南-Google 开源项目风格指南
  3. Java 编码规范
  4. C ++代码文件扩展名?.cc和.cpp
  5. C++头文件和std命名空间

你可能感兴趣的:(编程命名风格推荐)