作为一个刚入行两年内的程序员,代码规范是我们必须关注的,因为除了部分的外包项目,几乎所有的代码都不是一次性的。
1、软件产品生命周期中需要迭代或需求总是会有变更的,所以代码也需要修改,别人在修改你的代码时候需要快速的理解你的代码。这就是代码规范价值,
2、我们经常遇到在修改某个bug时候,需要通过代码来理解业务逻辑,所以好的代码可以帮助我们快速理解业务逻辑并修改bug。
3、我们在别人代码基础上添加新的业务场景,时候希望别人代码的是容易扩展的。
1、满足基本的业务需求。
2、可读性
3、可维护性
4、可扩展性
所以代码规范是好代码的一部分,它对第二点有重要影响,对第三点和第四点也有一定的影响。所以本篇文章对代码规范学习做一些记录
我是照着《阿里巴巴Java开发手册》进行整理
分享链接
链接:https://pan.baidu.com/s/15_RAJVWKI6wF-V6XDefl0Q
提取码:sby9
1、变量的命名规范(对应1、2)
1)变量必须以字母、下划线“_”或者美元符号“
”
开
头
2
)
变
量
可
以
包
括
数
字
,
但
不
能
以
数
字
开
头
3
)
除
了
“
”
和
“
”开头 2)变量可以包括数字,但不能以数字开头 3)除了“_”和“
”开头2)变量可以包括数字,但不能以数字开头3)除了“”和“”符号外,变量名不能包含任何特殊字符
4)不能使用java语言的关键字,如int,class,public等等
5)采用小驼峰命名
6)POJO 类中的任何布尔类型的变量,都不要加 is,否则部分框架解析会引起序列化错
7)所有编程相关的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。
8)中括号是数组类型的一部分,数组定义如下:String[] args;
说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名方式
也要避免采用。
误。
2、常量的命名规则
1)常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长。
3、类的命名
1)类名使用 UpperCamelCase 风格,必须遵从驼峰形式,但以下情形例外:(领域模型
的相关命名)DO / DTO / VO / DAO 等。
2)驼峰命名法中大驼峰命名法
3)抽象类命名使用 Abstract 或 Base 开头;异常类命名使用 Exception 结尾;测试类命
4)如果使用到了设计模式,建议在类名中体现出具体模式。
名以它要测试的类的名称开始,以 Test 结尾。
4、方法的命名
2)接口类中的方法和属性不要加任何修饰符号(public 也不要加),保持代码的简洁
性,并加上有效的 javadoc 注释。尽量不要在接口里定义变量,如果一定要定义变量,肯定是
与接口方法相关,并且是整个应用的基础常量。
接口和实现类的命名有两套规则:
3)对于 Service 和 DAO 类,基于 SOA 的理念,暴露出来的服务一定是接口,
内部的实现类用 Impl 的后缀与接口区别。
如果是形容能力的接口名称,取对应的形容词做接口名(通常是–able 的形式)
4)枚举类名建议带上 Enum 后缀,枚举成员名称需要全大写,单词间用下划线隔开。
5、包名
1)包名统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词。包名统一使用
单数形式,但是类名如果有复数含义,类名可以使用复数形式
总结:
当我们使用变量、类名、方法等等的命名的时候。
首先我们要区分出他是变量、类名、方法,所以不同的元素的命名规则是不相同的如首字母的小写单词的词性等等。
其次我们要知道这个怎么来的,如在哪定义的。这个idea能帮我们
再者我们要知道这个元素里面装的是什么,比如变量我需要知道变量装的是什么数据,某个方法是处理什么场景的。
最后我们可能会再次使用到这个元素,所以我们因为有idea提示所以是长一点也没关系,但是开头的字符需要能够快速区分



