前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >烂代码吐槽汇 | 奇葩命名

烂代码吐槽汇 | 奇葩命名

作者头像
JavaQ
发布2018-04-04 17:31:31
8280
发布2018-04-04 17:31:31
举报
文章被收录于专栏:JavaQJavaQ

代码首先是给人看的,其次才是给机器看的。 烂代码特征:可读性差、逻辑混乱、性能低下。

1.奇葩项目(模块)名

项目(模块)名称使用汉语拼音、英汉双拼、超长的字母集。

项目(模块)名称应该使用言简意赅的英文单词或短语,可代表项目(模块)意图即可。

2.奇葩包名

包名称使用毫无意义的单个字母或另类的单词。

正常的包结构名称应该以官网或产品域名的倒序为基础包,然后细分service、dao等。基本上常用的包名也就那几个,没必要为了体现出自己的不同而新创包名,如果真的有必要建新包名,应该使用名词性质的单词。

3.奇葩接口名

接口名命名规则不统一,千奇百怪,使用非名词性单词。

一般情况下,根据团队编码习惯,接口名称规则需要统一。最好不要使用以字母I为前缀或以interface为后缀,你不觉得这样很多此一举吗?名称命名需要使用名词性的单词或短语。

4.奇葩类名和对象名

类名或对象名使用动词,使用非名词或非名词短语。

类名和对象名是一个标识,所以不要使用动词,应该使用名词或名词性的短语,而且最好不要使用以Data和Info为后缀,这样的后缀给人感觉很累赘。

5.奇葩属性名

类的属性名为了和表的字段名称一致,名称中的单词使用下划线连接;属性名使用非驼峰式命名;使用无意义的字母或单词缩写。

类的属性名应该使用有意义的名词或名词性的短语,名称的首字母要小写,名称中包含多个单词的需要使用驼峰式的命名规则,一定不要使用无明确意义的字母或单词缩写。如果为了表达多个数据的集合,避免使用List结尾,可以使用对应单词的复数形式,如students,而不是studentList。推荐使用一些可读的出来或可搜索到的单词或短语,易于理解。对于一些boolean类型的属性名,推荐在名称前加上is前缀,这样容易理解其值的含义。

6.奇葩方法名

方法名以非动词开头;方法名不能表达出方法体的意图;方法名使用以get为前缀;方法名使用单词或短语的字母缩写;方法名不遵循驼峰式命名规则。

方法名应该以动词开头,使用动词短语;动词短语应该可以表达出本方法体的意图,做到可以根据方法名看出方法做了什么;除了属性的getter方法,避免使用以get作为方法名的前缀,因为get无法说清方法的意图,有偷懒的嫌疑,而且这样命名说明写代码的人真的很low;最不能忍的是方法名使用单词的字母缩写,谁能知道这是干啥的,就是代码作者自己,一段时间后也不能保证记得这是作什么的;方法名应该遵循首字母小写的驼峰式命名规则;对于返回值类型为布尔值类型的方法,推荐方法名前缀使用is、has、can。

7.奇葩变量名

变量名使用单个字母。

除了用于循环的临时变量名,其它变量都不要使用单个字母命名,且变量名要能表达出其真正意图,遵循驼峰式命名规则。

8.奇葩常量名

常量名使用非大写的单词或短语;常量名中的多个单词间不使用下划线连接。

常量名应该全部使用大写的字母,而且单词与单词间使用下划线连接。对于方法里用于比较或计算的“0”、“1”之类的常量,最好定义成常量,使用常量名标识这些数据的意思,否则谁能理解“0”代表什么,“1”代表什么。

小结

命名可以通过总结的方式,归纳出属于自己的一套命名规则。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-06-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 JavaQ 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档