编程的时候发现给变量或方法命名词穷了怎么办?

文章类别

我记得以前上学的时候,同学们都喜欢互相起外号,有时候也会偷偷的给老师起外号! 比如:二狗子,大胸妹,装逼佬…

当过去多年再回想起某位同学的模样时,已经记不得她的名字了,但是对于她的外号 却牢牢记在心中,毕竟人家胸大嘛!

所以有时候父母给我们起名的时候,他们想的太多,比如想要你成才,就让你的名字中 有个“才”字,比如想要你有钱,就让你的名字有个“金”字,有些父母还去找那些带着黑色 墨镜的老头算命,问问他们的孩子五行缺什么,比如五行缺金,那么他们的孩子的名字 很有可能有个“鑫”字,如果五行缺水,那么他们的孩子的名字就很有可能有个“淼”字,当然 有的人名字有个“晶”字,就不知道人家缺什么了!

为什么要有一个好的命名

话说回来,我们在编程的时候,给变量名或者方法起一个好的名字,还是很重要的, 毕竟我们是人,要面子的嘛,代码还是要给人看的,不要让人看了你的变量名或方法 名称时候cao声连连就不好了。

再者,代码可能会经过多人,也就是二手代码,三手代码等,好的名字能让别人方便 接你的锅,大家都是程序员,就别为难别人了。如果你打算自己搞一个开源项目丢到 github上,也最好斟酌一下你的变量名或者方法名,不要丢脸啦!

不好的命名,可能过了一两个月自己回来看自己的代码都是一脸懵逼的,在这名称中连 自己都不知道什么意思,那这算什么意思呢?无意识的增加了代码的维护成本。

怎么起一个好的变量名或方法名

有些人很随意的给变量命名,例如 int a ,String myData,这样的命名方式 一时爽,可是到后面就会发现,一个好的命名的重要性。

而好的命名应该是顾名思义的,具有可读性,必须清晰,精确,比如我们有一个叫 做当前时间的变量,我们应该怎么对其进行命名呢?

首先我们可以查一下单词,当前就是current,时间就是Time,接着我们还可以比较 英文单词的语义,然后结合代码上下文确定命名,比如我们把当前时间这个变量命名 为 currentTime,相比于myTime,或者 cTime等就好很多!

在这里推荐一个不错的开源网站,这个网站是专门为你的命名时词穷而建立的,它的名字 叫做CODELF

他支持直接搜索中文,当你查中文的时候,Codelf 会直接查好单词和单词的近义词给你, 然后再搜索Github, Bitbucket, Google Code, Codeplex, Sourceforge, Fedora Project上的 开源项目的源码匹配出与这些词汇相关的变量名和函数名。 Codelf 可以选择开发语言进行搜索,结果会把同个源码文件里匹配的变量名排在一起