命名

命名包括给变量、函数、参数、类和封包命名。以下是要遵守的几条命名规则:

1、名副其实

变量、函数或类的名称应该已经答复了所有的大问题。它该告诉你,它为什么会存在,它做什么事,应该怎么用。如果名称需要注释进行说明,则不算名副其实。好的命名是循序渐进的,一旦发现有更好的名称,就换掉旧的。

2、避免误导

避免留下掩藏代码本意的错误线索,即避免命名产生错误的歧义。

3、做有意义的区分

因为同一作用范围内两样不同的东西不能重名,你可能会随手改掉其中一个的名称。有时干脆以错误的拼写充数,或名称后面添加数字(al、a2,……aN),这样的名称无法提供作者的意图,也无法对变量做出区分。废话是另一种没意义的区分,如在名称后面添加Info、Data尽量保证不同的POJO仅根据名称就能区分。

4、使用可搜索的名称

避免用单字母名称和数字常量来命名,因为很难在一大篇文字中找出来(idea搜索)。单字母名称仅用于短方法中的本地变量。名称长短应与其作用域大小相对应。

5、避免思维映射

即避免命名需要在你脑子里翻译一遍,命名应该足够明确。

6、名词短语与动词短语

类名和对象名应该是名词或名词短语,方法名应当是动词或动词短语。可以考虑将构造方法设置为private,然后使用动词短语来包装。

7、保持命名的一致性

给每个抽象概念选一个词,并且一以贯之。如获取的相关方法,开头可以是fetch、retrieve和get,在每个类中使用的抽象概念词应该保持一致。

8、名称与逻辑相呼应

避免将同一命名单词用于不同目的。不同类的相同方法名,其代码功能逻辑应该相似(如不同类的add方法逻辑应该是类似的)。

9、添加有意义的语境

可以给命名添加前缀来给该名称,给读者提供语境。如state变量可以改为addrState来提供语境,变量名或属性名可以通过函数名和类名来提供语境。

你可能感兴趣的:(命名)