二、有意义的命名

1.名副其实

比较如下两段代码(忽略变量未定义问题)

这就是选用好名称的力量

2.做有意义的区分

谁能说出下面这三个方法的区别?

getActiveAccount();   getActiveAccounts();   getActiveAccountInfo();

3.避免使用编码

(1)比较如下两段代码

代码读得越多,眼中就越没有前缀。最终前缀就变作了不入法眼的废料。

(2)接口和实现

创建一个抽象工厂,该工厂是个接口,要用具体类来实现。如何来命名呢?IshapeFactory和ShapeFactory吗?但我不想让用户知道我给他们的是接口,我就想让他们知道那是个Factory,完全可以让接口命名为ShapeFactory,实现命名为ShapeFactoryImp。

4.类名和方法名

类名应该是名词或名词短语,方法名应该是动词或动词短语。JavaBean要有get,set,is前缀。重载构造方法时,使用描述了参数的静态工厂方法名。例如,

Complex point = Complex.FromRealNumber(23.0);

通常好于

Complex point = new Complex(23.0);

5.每个概念对应一个词

例如,使用fetch,retrieve,get来给多个类的同种方法命名,你怎么记得住哪个类中是用哪个方法呢?同样,在同一堆代码中既有controller,又有manager,还有driver,这就会让人困惑。

6.添加有意义的语境

比较如下两段代码


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 名副其实: 变量、函数或类的名称就能够说明为什么它存在,做什么事,怎么用,如果需要注释来补充,就不算名副其实: 避...
    树下老男孩阅读 944评论 0 3
  • 名副其实 变量名应该告诉你:他为什么会存在,他做什么事,他应该怎么用 如果名称需要注释来补充,那就不算名副其实 p...
    denuth阅读 288评论 3 0
  • 思考一下從華德•薩姆基(Walter Semkiw)所著《轉世的革命家(Return of the Revolut...
    卡乐be阅读 348评论 0 0
  • 了解Hexo Hexo DocsHexo命令大全 了解markdown语法 makedown语法简明版 maked...
    fellyvette阅读 685评论 0 4

友情链接更多精彩内容