名副其实的名字
取名字这件事,真的是程序员的一门艺术。脑海里面能浮现出同事们用翻译软件取名的画面吗?
一个好的名字再怎么夸赞都不为过,但是这个最基础的前提就是,它首先得是一个「正确的名字」。我就遇到过一次,函数名字叫做类似于 listAll
这样的东西,戳进去看实际上还基于业务规则做了过滤..(这样的牛肉不对马嘴的情况又让我联想到了注释这样的东西,可能实际的代码已经作了更改,但是注释还是是维持原样没有变化..)
并且还有一个特别有意思的点,就是关于名字的「长度」。有时候可能为了想要描述清楚一个变量 or 一个类的具体作用,我会给它起一个看起来特别长的名字..关于这个,这里有一些小经验可以分享一下:
- 去掉 Info 和 Data 这样的后缀:这些就像是英语中的 a/ an/ the 一样,是意义含糊的废话,废话都是冗余的..
- 不要给变量加前缀来标识:变量不需要一个
m_
or 其他什么的前缀来标识这是一个变量.. - 思考是否有必要标识出变量的类型:我们标注出变量的类型的目的是什么?对于弱类型的语言,可能有时候还是必要的,因为我们有时候并不能从
students
这个变量中判明我应该怎样对这个变量进行操作,但是对于 Java 这样的强类型的语言,我们就需要根据实际的场景思考是否真有那么必要了。