命名那些事

xiaoxiao2021-07-27  99

      关于命名这件事,真的是被强调太多次了,我自己觉得还ok的名字啊,review代码时别人就看不懂我这个是啥意思了,每次都会被说命名的事,我刚开始觉得我真的是起名困难症,我是真不知道该起啥名,感觉金山词霸也查了啊,明明也说了这个是啥需求的东西,还是被一再纠正,甚至得了一要起名我就发愁的病。后来觉得还是要集中去学习一下 ,同事之前送的那本《代码整洁之道》一直没看,昨天被diss完决定要开始读这本书了,虽然只读了前三章,但是讲了很多关于命名的方式,在此总结一下。

1、名副其实

变量和函数名,你应该一看就知道它是干什么的,是number还是boolean。如果你看了名字但还是要借助注释来辨别它是干啥的,说明这个名起的不好。

2、魔术数(magic number)

魔术数应赋于有意义的变量,例如i<4你并不知道这个4意味着什么,去往源头询查才发现是表示帮砍机会的,去寻找的时候就已经浪费了时间,一眼看你的代码不能看明白。此时就可以定义 const HELP_HEW_CHANCE = 4;

3、避免误导

比如你定义了一个变量List,别人来看的时候,并不知道你说的是商品列表还是用户列表,是新用户列表还是老用户列表,这时使用userList和goodsList来区分也是好的。

4、拒绝相似

比如你定义了两个变量,oneThinPerson 和 oneThinerPerson,咋一眼看,会以为这时两个相同的变量,仔细一看其中一个多了个er,干嘛这个费劲??能不能搞个一眼能看明白的。

5、使用能读出来的名称

例如ymds这个变量名,或者djs这个变量名,仔细看也看不懂啊。再仔细一看,原来ymds是获取当前日期的,djs是一个倒计时函数  。。。 换个吧。

6、使用可搜索的名称

比如你再组件里写了一个showBanner变量,知道是要显示banner的一个变量,过好久之后你需要修改某些条件,你在项目里搜索showBanner,然后出来一堆,你还得一个一个去翻,何必呢。。定义成showNewUserBanner会不会好些,不要怕长。

7、变量名

变量名应该是名词或名词短语,不要怕长,能描述清楚最好。

8、方法名

方法名应该是动词或者动词短语,依据功能加上is 、 get 、show、hide等前缀。

9、拒绝模糊

例如你的变量名叫updateMission,但是阅读的人并不知道你这个mission干了什么,其实你只是更新了一个按钮状态,但是用mission这么宽泛的名字来包括,不是很清晰,不如直接写成updateBtn。

10、拒绝无意义

不要使用无意义的命名,显得很多余,例如amount已经表示数量了,但是你非要命名成amountNumber,多此一举。

 

 

以上。

 

 

转载请注明原文地址: https://www.6miu.com/read-4823406.html

最新回复(0)