有意义的命名--代码整洁之道

有意义的命名—代码整洁之道

命名是一个非常重要的环节,因为可以说在编程过程你一定逃不过命名:变量名,函数名,类名,文件名.所以要好好取一个名字

名副其实,把东西说清楚

这条规则顾名思义就是要名字要说清楚这个东西是什么,比如:

  • 不要使用不常见的缩写 如:gendmy(按照 day month year 的格式来生成 generate 日期,这除了自己谁看的懂)
  • 尽量不要使用单字符 如:a,b,i,j,k,a1,a2
  • 不要使用拼音,遇到不知道的可以查字典
  • 变量名和类名应该使用名词词组来说明 如:importantUser,commonUser
  • 函数名应该用动词词组来说明 如:switchToImportantUser(),switchToCommonUser()
  • 使用驼峰命名法

不说废话

有的人为做到名副其实的规则,于是想给名字加一点东西,殊不知有的时候反而是画蛇添足,比如

  • 尽量不加a,an,the这种没必要的数量词,如果是单数就直接是名词的单数形式,theUser和User没区别
  • 不加可有可无的废话,比如创建一个学生类,student和studentInfo,studentData就没有任何区别,其中后面的Info和Data就是废话,再比如:你在数据库创建一个学生表,你会叫studentTable吗?后面的Table就是废话

避免误导

在每种语言中都有内置的标识符,他们都有特定的含义,如果和他们没有关联就不要在命名中加上他们.

比如在java中有list类,如果你需要有一个类来保存所有的账号信息,于是你给它起名为accountList.这样很显然就是不合适的,因为list的特殊含义,别人第一眼就会感觉accountList这个变量是一个list变量从而产生误解

一个概念对应一个词

在生活中,有很多时候很多英语单词可以相互替换不影响语义,甚至在写作文的时候老师会要求大家不要一直用一个词语,但是在编程的时候反而要求对于一个意思一直用一个词语.

比如:deleteUserById(),removeUserByName(),delete和remove都有删去的意思,这两个方法应该来说就是在参数不同,一个是按照Id来删除用户信息,一个是按照name.但是别人可能就是觉得这是不同的.

猜你喜欢

转载自blog.csdn.net/qq_44823898/article/details/108490979
今日推荐