编程中什么因素会使变量名非法?

语法规则、约定和可读性指南决定了编码时的非法变量名。
On this page

编程中什么因素会使变量名非法?

摘录

本文介绍了在像Python、JavaScript、C#等编程语言中,可以使变量名无效的语法限制、命名约定和可读性最佳实践。


编写代码时,命名变量是其中的一项首要任务。但在大多数编程语言中,某些变量名被视为非法或无效。在本文中,我们将介绍语法规则、约定和可读性准则,以确定好的和坏的变量名的区别。

介绍

编程中,变量是一个命名的容器,用于存储数据在内存中。变量需要被赋予唯一的名称,这个名称需要遵循你所编写代码的语言的语法规则。

选择好的变量名非常重要,因为它们可以使你的代码更易读和可维护。非法或选择不当的名称会使人难以理解你的代码的功能。

语法规则

存在一些语法限制,使得某些变量名无效:

非法字符

大多数语言不允许变量名中包含空格、符号或特殊字符,只能使用下划线和有时短横线。例如,my variablemy#variablemy$variable都是非法的。

String_to_Snake_Case这样的工具可以帮助生成符合这些字符规则的有效名称。

长度限制

语言还限制变量名的长度,通常不能超过255个字符。过长的变量名,比如thisIsAnExtraordinarilyLongVariableName可能会超过长度限制。

保留字

每种语言都有一些关键词和保留字,不能用作变量名。例如,在Python中,intfloatreturn等都是禁止使用的。

String_to_Lowercase这样的工具可以帮助避免意外使用保留字。

样式约定

除了语法规则外,还有命名约定标准:

大小写

语言通常遵循大小写约定,比如PascalCasesnake_case,如果不遵循,可能会使一个名称无效。

PascalCase与snake_case

C#使用PascalCase,而Python推荐使用snake_case。在某种语言中使用错误的命名风格会使名称不符合标准。

String_to_CamelCase这样的工具可以帮助在不同命名约定之间切换。

可读性

即使变量名称遵循语法规则,如果不易读,仍然可能被认为是糟糕的形式:

描述目的

变量名称应描述变量的用途或所保存的数据。像dataatemp这样的通用名称无法解释变量的用途。

避免缩写

在名称中使用缩写和首字母缩略词,例如ccnumdept_id,可能会令人费解。为了清晰起见,请完整拼写它们。

明智地使用String_to_Capital

某些缩写,例如以IdNum开头的名称,是可以接受的约定。但是请谨慎使用并保持一致。

非法名称的示例

以下是一些无效并应避免使用的变量名称示例:

不能以数字开头

11value = 1 #illegal

大多数语言中,变量名称不能以数字开头。

不允许使用空格

1int my value = 5; //illegal

在Java和许多其他语言中,空格会使名称无效。

避免使用奇怪的字符和符号

1string my$variable! = "value"; //illegal

特殊字符如$!@等会使名称非法。

名称过长

1int thisisaverylongvariablenamethatgoesoverthelimit = 5; //illegal

超过字符限制的长名称将被截断或拒绝。

保留字引起冲突

1var for = 5; //illegal

for是JavaScript中的保留字,因此不能用作变量。

结论

在变量命名方面需要牢记以下几个关键准则:

  • 遵循语言语法规则,包括允许的字符、长度限制以及避免使用保留字
  • 遵循语言约定,如PascalCasesnake_case
  • 使用能清晰表达含义的描述性命名
  • 避免使用不清晰的缩写和首字母缩略词

类似 String_to_Uppercase 这样的工具可以自动将字符串格式化为有效的名称。但是手动考虑可读性也是值得的。

花时间为变量赋予清晰、合法的名称可以使代码更易读、更易维护。非法的名称会导致您或其他开发人员在后续工作中产生困惑。因此,从一开始就养成良好的命名习惯。