前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >编码命名方式知多少

编码命名方式知多少

作者头像
恋喵大鲤鱼
发布2022-11-21 09:30:16
1.2K0
发布2022-11-21 09:30:16
举报
文章被收录于专栏:C/C++基础

文章目录

编码时,命名无处不在。

比如我们需要对文件命令,对目录命名,对变量命名,还有其他类型的资源等等。那么取名时,业界有哪些命名方式呢?

本文将列举常见的命名方式,不讨论孰优孰劣,每种都有其各自的使用场景。

1.camel case (驼峰式)

特点: 名称中间没有空格和标点,除第一个单词外后面的单词首字母均大写。

如果第一个单词首字母小写,称之为小驼峰式(lower camel case),例如 “getUserName”。

在这里插入图片描述
在这里插入图片描述

如果第一个单词首字母大写,称之为大驼峰式(upper camel case),例如 “GetUserName”。

在这里插入图片描述
在这里插入图片描述

注意: 大驼峰式还有一个称呼叫帕斯卡式(pascal case)。

驼峰式是一种非常流行的将单词组合成单个概念的方式。在许多语言中,小驼峰常被用来命名局部变量和函数,大驼峰常用来命名全局变量和类。

2.snake case (蛇形式)

特点: 名称的不同单词由下划线分隔。

如果所有单词都小写,称之为小蛇式(snake case),例如 “get_user_name”。

如果所有单词都大写,称之为大蛇式(screaming snake case),例如 “GET_USER_NAME”。

之所以加个 screaming,因为在英文中,如果一个单词全部大写,表示大声喊叫。

小蛇式通常用于声明数据库字段名,大蛇式通常被许多语言用来命名常量。

3.kebab case (烤串式)

特点: 名称中间的标点被替换成连字符(-),所有单词都小写,例如 “get-user-name”。

如果所有单词都小写,称之为小烤串式(kebab case),例如 “get-user-name”。

如果所有单词都大写,称之为大烤串式(screaming kebab case),例如 “GET-USER-NAME”。

URL 中的 path 部分经常使用小烤串式。例如 www.blog.com/cool-article-1。这是一种很好的、干净的、可读的单词组合方式。

大烤串式的命名主要用于突出强调被命名的对象,古老的 Cobol 编程语言中经常使用,所以有时也被称为 cobol case。

4.匈牙利命名法

匈牙利命名法是早期的规范,由前微软程序员查尔斯-西蒙尼(Charles Simonyi),因其为匈牙利人,故被称为匈牙利命名法。

匈牙利命名法是 IDE 还十分智障的年代的产物。那个年代,当代码量很多的时候,想要确定一个变量的类型是很麻烦的,不像现在 IDE 都会给提示,所以才产生了这样一个命名规范,估计现在已经没啥人用了吧。一个十分复杂却又琐碎的命名规范。

该命名规范,要求前缀字母用变量类型的缩写,其余部分用变量的英文或英文的缩写,单词第一个字母大写。

代码语言:javascript
复制
int iMyAge;        #  "i": int
char cMyName[10];  #  "c": char
float fManHeight;  #  "f": float

其他前缀类型还有:

代码语言:javascript
复制
a      数组(Array)
b      布尔值(Boolean)
by     字节(Byte)
c      有符号字符(Char)
cb     无符号字符(Char Byte,并没有神马人用的)
cr     颜色参考值(Color Ref)
cx,cy  坐标差(长度 Short Int)
dw     双字(Double Word)
fn     函数(Function)
h      Handle(句柄)
i      整形(Int)
l      长整型(Long Int)
lp     长指针(Long Pointer)
m_     类成员(Class Member)
n      短整型(Short Int)
np     近程指针(Near Pointer)
p      指针(Pointer)
s      字符串(String)
sz     以 Null 做结尾的字符串型(String with Zero End)
w      字(Word)

还有其他更多的前缀是根据微软自己的 MFC/句柄/控件/结构等东西定义的,就不过多描述了。

5.小结

没有最好的命名方式,就像没有最好的编程语言一样。

如果一个团队在命名名方式保持一致,那么选择使用哪个命名方式并非那么重要,当然也要和业界的惯例达成一致。


参考文献

Camel case - Wikipedia Snake case - Wikipedia Hungarian notation - Wikipedia Naming convention (programming) - Wikipedia Case Styles: Camel, Pascal, Snake, and Kebab Case COBOL - Wikipedia

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-11-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 1.camel case (驼峰式)
  • 2.snake case (蛇形式)
  • 3.kebab case (烤串式)
  • 4.匈牙利命名法
  • 5.小结
  • 参考文献
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档