匈牙利命名法是微软首席软件工程师Charleses的命名标准 Simonyi于20世纪70年代发明。这种命名方法的目的是帮助程序员提高代码的可读性和可维护性。
匈牙利命名法的命名规则匈牙利命名法的命名规则是:以变量类型为前缀,再加上描述性变量名。
变量类型可以是int(整形)、str(字符串)、bool(布尔型)、dbl(双精度浮点型)等,描述性变量名可以是代表变量意义的英文单词、缩写、数字等组合。
以int类型变量为例,如果要声明存储年龄的变量,则可以使用以下命名方法:
intAge
其中,"int“表示变量的类型是整形,”Age用于表示变量存储的数据是人的年龄,这是一个描述性的变量名。
匈牙利命名法的历史演变匈牙利命名法的最初版本是在20世纪70年代,Charles Simonyi发明的。在这个版本中,变量名的前缀是变量类型的简写,以大写字母作为描述性变量名的开头,例如:
iAge

匈牙利命名法的这个版本不仅需要保留“类型”和“名称”的信息,还需要保留大小写的信息。虽然代码的可读性有所提高,但很难将这一规则应用到复杂的软件开发中。因此,一些程序员为了实际需要而修改了匈牙利命名法的规则。
此外,匈牙利命名法的最新版本是“语义版”。这个版本不仅是变量的前缀,还要求变量名称应该是一个单词,并大写首字母。这种变量命名可以提高代码的可读性,但在一定程度上降低了可维护性。
匈牙利命名法的优缺点使用匈牙利命名法命名变量可以提高代码的可读性和可维护性,使代码更容易理解和修改。
然而,匈牙利命名法的缺点也很明显,例如:
1. 代码量会增加,变量名称会变长。
2. 当变量类型发生变化时,可能需要修改代码中所有使用变量的地方,特别是在复杂的代码结构下。
3. 在大型项目中,由于变量名的长度和复杂性,程序员很难记住变量名的含义,因此很难使用匈牙利命名法。
匈牙利命名法如何正确使用?匈牙利命名法的正确使用可以提高代码的可读性和可维护性,以下是正确使用匈牙利命名法的建议:
1. 变量名的前缀应该是表示变量的数据类型,而不是表示变量的作用。
2. 变量名称应遵循语义模式。
3. 变量名称应该很短,但不应该失去描述性。
4. 其他标准命名规则可用于变量名,如camelcasee、Pascalcase等。
总结匈牙利命名法是一种命名规范,可以提高代码的可读性和可维护性。正确使用匈牙利命名法需要注意代码的长度、复杂性和语义。与其他命名规范相比,匈牙利命名法有其优缺点,应根据具体项目的实际情况进行权衡。