变量名命名

2024-05-08 18:38
文章标签 命名 变量名

本文主要是介绍变量名命名,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

    有些东西不明确写出来就难以确定下来,个人写代码的命名风格一直没有稳定下来,今天写个笔记明确几类主要的命名,希望可以逐步养成自己的编程风格。

    1.类名/类型名: t_每个单词首字母大写【例:t_TypeName】;

    2.枚举类型:反应类型的复数形式【例:Enum_Colors】;

    3.函数名:每个单词首字母大写【例:FunctionName】;

    4.常量、预处理宏全部大写和用下划线分隔单词【例:ALL_CAPS】;

    5.局部变量名:第一个单词小写,后续每个单词的首字母大写【例:variableName】;

    6.全局变量名:g_variableName;

    7.成员变量名:m_variableName;

    8.枚举变量名:反应类型和取值【例:Color_Red、Color_Blue】;



附变量名命名自省问题和注意要点

CheckList:Naming Variables

命名的一般注意事项

    1.名字完整并准确地表达了变量所代表的含义吗?
    2. 名字反映了现实世界的问题而不是编程语言方案吗?
    3. 名字足够长,可以让你无须苦苦思索吗?
    4. 如果有计算值限定符,它被放在名字的最后吗?
    5. 名字中用Count或者Index来代替Num了吗?

为特定类型的数据命名

    1.循环下标的名字有意义吗?(如果循环的长度超出了一两行代码或者出现了嵌套循环,那么就应该是i、j或者k以外的其他名字)?
    2. 所有的“临时”变量都重新命以更有意义的名字了吗?
    3. 当布尔变量的值为真时,变量名能准确表达其含义吗?
    4. 枚举类型的名字中含有能够表示其类别的前缀或后缀了吗?例如,把Color_用于Color_Red, Color_Green, Color_Blue等了吗?
    5. 具名常量是根据它所代表的抽象实体而不是它所代表的数字命名的吗?

命名规则

    1.规则能够区分局部数据、类的数据和全局数据吗?
    2. 规则能够区分类型名、具名常量、枚举类型和变量名吗?
    3. 规则能够在编译器不强制检测只读参数的语言里标识出子程序中的输入参数吗?
    4. 规则尽可能地与语言的标准规则兼容吗?
    5. 名字为了可读性而加以格式化吗?

短名字

    1.代码用了长名字吗(除非有必要使用短名字)?
    2. 是否避免只为了省一个字符而缩写名字?
    3. 所有单词的缩写方式都一致吗?
    4. 名字能够都出来吗?
    5. 避免使用容易被看错或者读错的名字吗?
    6. 在缩写对照表里对段名字作出说明了吗?

常见命名问题:要避免使用:

    1.容易让人误解的名字;
    2. 有相近含义的名字;
    3. 只有一两个字符不同的名字;
    4. 发音相近的名字;
    5. 包含数字的名字;
    6. 为了缩写而故意拼错的名字;
    7. 英语中经常拼错的名字;
    8. 与标准库子程序名或者预定义变量名冲突的名字;
    9. 过于随意的名字;
    10. 含有难读字符的名字;

Key Points

    1.好的变量名是提高程序可读性的一项关键要素。对特殊种类的变量,比如循环下标和状态变量,需要加以特殊的考虑;
    2. 名字要尽可能地具体。那些太模糊或者太通用以至于能够用于多种目的的名字通常都是很不好的;
    3. 命名规则应该能够区别局部数据、类数据和全局数据。它们还应当可以区分类型名、具名常量、枚举类型名字和变量名;
    4. 无论做那种类型项目,都应该采用某种变量名规则。你所采用的规则的种类取决于你的程序的规模,以及项目成员的人数;
    5. 现代编程语言很少需要用到缩写。如果你真的要使用缩写,请使用项目缩写词典或者标准前缀来帮助理解所用缩写;
    6. 代码阅读的次数远远多于编写的次数。确保你所取的名字更侧重于阅读方便而不是便携方便。


参考书籍:《代码大全》· 第二版

这篇关于变量名命名的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/971121

相关文章

变量与命名

引言         在前两个课时中,我们已经了解了 Python 程序的基本结构,学习了如何正确地使用缩进来组织代码,并且知道了注释的重要性。现在我们将进一步深入到 Python 编程的核心——变量与命名。变量是我们存储数据的主要方式,而合理的命名则有助于提高代码的可读性和可维护性。 变量的概念与使用         在 Python 中,变量是一种用来存储数据值的标识符。创建变量很简单,

BERN2(生物医学领域)命名实体识别与命名规范化工具

BERN2: an advanced neural biomedical named entity recognition and normalization tool 《Bioinformatics》2022 1 摘要 NER和NEN:在生物医学自然语言处理中,NER和NEN是关键任务,它们使得从生物医学文献中自动提取实体(如疾病和药物)成为可能。 BERN2:BERN2是一个工具,

【C/C++】变量命名规范

在 C++ 中,为 bool 类型的变量命名时,通常遵循以下命名规范,以确保代码的可读性和一致性: 表示状态或条件: 使用 is 前缀表示某个状态或条件,例如 isReady、isValid。使用 has 前缀表示是否拥有某个属性,例如 hasData、hasError。使用 can 前缀表示是否具备某种能力,例如 canExecute、canRead。使用 should 前缀表示是否应该执行

大话C++:第6篇 命名空间namespace作用域

1 命名空间概述 在一个大型的软件项目中,可能会有许多不同的代码文件,这些文件可能由不同的开发者编写,或者来自不同的库和模块。如果这些代码文件中存在同名的变量、函数、类或其他标识符,那么在编译或运行时就可能发生命名冲突,导致程序无法正确执行。 通过使用命名空间(namespace),开发者可以将相关的代码、变量、函数等组织在一起,形成一个独立的命名空间。这样,即使不同的代码片段中使用了相同的标

VsCode中 找不到UnityEngine.AddressableAssets命名空间

Unity2019.3.5 VsCode中 找不到UnityEngine.AddressableAssets命名空间 命名空间“UnityEngine”中不存在类型或命名空间名“AddressableAssets”(是否缺少程序集引用?) 由于在Unity2019.3.5 AddressableAssets模块的dll文件移到其他位置了,vscode还是找的以前的路径所以会导致引用不正确 解

二、Java之关键字与命名规范

Java之关键字与命名规范 零基础学Java什么是关键字命名规范的重要性 零基础学Java Java学习交流 : V:study_51ctofx 什么是关键字 关键字:含有特殊意义,编译器解析成特定的含义; 比如 private、int、void、class、enum 等等, 这些关键字都不能用作变量、方法名、类名等. //错误,static 是关键字 不能用作变量名

android的工程和代码的命名规范(第一篇文章,勿喷)

1。首先我们从编译代码的工具说起吧:工程中的注释一般都是中文写的(毕竟大家都是中国人,还是习惯于中文)这样就设计到乱码的问题了;对于这类问题,我们一般最好的处理方法就是将工程设置成 UTF-8 的格式;下面就说说怎么将工作空间或者是工程设置成UTF-8 的格式吧(当然我这里面说的是eclips

命名规范~

1. 命名原则 1.1 准确性  可读性 "类"名应该是"是什么"。应该是一个名词,作为主语。 "方法"名应该是"干什么"。一个方法应该是动词,作为谓语。 避免不必要的缩写 把类/ 方法的名字写全。但是,首字母缩略词的术语是可行并且推荐的,如 Http , Id , Url 。 以下是可用的、得到普遍认可的缩写:configuration -> configidentifier

初识命名空间

1.创建两个命名空间 ip netns add host1 ip netns add host2 2.  查看命名空间 ip netns ls 3 、 创建veth ip -netns host1 link add veth0 type veth peer name host1-peer 4、 查看命名空间接口  ip -netns host1 address 5、 把hos

【TCGA】命名方式

以下是TCGA-LUAD数据集中Diagnostic类型的一张WSI名称: · TCGA: Project,项目名称 · 44: Tissue Source Site,样本机构来源 · 7662: Participant,项目参与者 因此,TCGA-44-7662就是这张WSI的病人编号 · 01: Sample,样本组织来源类型 肿瘤类型为01-09,正常类型为10-19,对照组为20