- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java开发规范(参照阿⾥规范改编)
JAVA 开发规范
v1.0.0 2021/08/27
本篇规范基于阿⾥巴巴、华为的开发⼿册,补充了⼀些细节。
规范不是为了约束和禁锢⼤家的创造⼒,⽽是为了帮助⼤家能够在正确的道路上,尽可能的避免踩坑和跑偏。
规范可以让我们⽆论单枪匹马还是与众⼈同⾏的时候都能得⼼应⼿。
规范可以让我们在⾯对⽇益变态的需求和做代码接盘侠的时候,更优雅从容。
⼀、编程规范
1、好代码的原则
我们参考 Kent Beck 的简单设计四原则来指导我们的如何写出优秀的代码,如何有效地判断我们的代码是优秀的。
通过所有测试(Passes its tests):强调的是外部需求,这是代码实现最重要的
尽可能消除重复 (Minimizes duplication):代码的模块架构设计,保证代码的正交性,保证代码更容易修改
尽可能清晰表达 (Maximizes clarity):代码的可阅读性,保证代码是容易阅读的
更少代码元素 (Has fewer elements):保证代码是简洁的,在简洁和表达⼒之间,我们更看重表达⼒
以上四个原则的重要程度依次降低,这组定义被称做简单设计原则。
2、命名规范
2-1、项⽬命名规范
全部采⽤⼩写⽅式,以中划线分隔。
正例:mall-management-system / order-service-client / user-api
反例:mall_management-system / mallManagementSystem / orderServiceClient
2-2、模块命名风格(多模块项⽬)
模块名称:{项⽬名称}-{模块名称} 模块名称简洁体现职责
模块名字作为模块组件的名称(即maven中的标签)
2-3、包命名规范
包名不应该⽤来表达模块完整的意思,包名应该仅⽤作与同包下的其他包做区分。
但尽可能使⽤单个单词命名,如果单个单词⽆法正确表达,可采⽤.分割,实在不⾏可采⽤全部单词⼩写(参考的sprin 命名)
2-4、类命名规范
类名使⽤ UpperCamelCase 风格,必须遵从驼峰形式,但以下情形例外:DO / BO / DTO / VO / AO ;
抽象类命名使⽤ Abstract 或 Base 开头;
异常类命名使⽤ Exception 结尾;
测试类命名以它要测试的类的名称开始,以 Test 结尾;
如果使⽤到了设计模式,建议在类名中体现出具体模式;
枚举类名建议带上 Enum 后缀,枚举成员名称需要全⼤写,单词间⽤下划线隔开。
正例:
1MarcoPolo / UserDO / XmlService / TcpUdpDeal / TaPromotion
反例:
1macroPolo / UserDo / XMLService / TCPUDPDeal / TAPromotion
3、TODO/FIXME 规范
TODO/TBD(to be determined) 注释⼀般⽤来描述已知待改进、待补充的修改点,并且加上作者名称。
FIXME 注释⼀般⽤来描述已知缺陷,它们都应该有统⼀风格,⽅便⽂本搜索统⼀处理。如:
1// TODO author-name: 补充XX处理
2// FIXME author-name: XX缺陷
4、⽅法参数规范
⽆论是 亦或是其他的代码,每个⽅法最多 个参数,如果超出 个参数的话,要封装成 对象。
controller,service,manager,dao 3 3 javabean
1. ⽅便他⼈调⽤,降低出错⼏率。尤其是当参数是同⼀种类型,仅仅依靠顺序区分,稍有不慎便是灾难性后果,⽽且排查起来也极其恶
⼼。
2. 保持代码整洁、清晰度。当⼀个个⽅法⾥充斥着⼀堆堆参数的时候,再坚强的⼈,也会⾝⼼疲惫。
反例:
1 /**
2 * 使⽤证书加密数据⼯具⽅法
3 *
4 * @param param
5 * @param password 加密密码
6 * @param priCert 私钥
7 * @param pubCert 公钥
8 *
您可能关注的文档
- 2022~2023国家电网招聘考试考试题库及答案解析第130期.pdf
- 2022~2023安全员考试题库及答案参考3.pdf
- 2022~2023演出经纪人考试题库及答案参考32.pdf
- 2022~2023演出经纪人考试题库及答案第697期.pdf
- 2022~2023演出经纪人考试题库及答案第801期.pdf
- 2022~2023演出经纪人考试题库及答案第82期.pdf
- 2022~2023演出经纪人考试题库及答案第936期.pdf
- 2022~2023特种设备作业考试题库及答案参考30.pdf
- 22届心理学测评卷(完整章节)题目+答案解析.pdf
- 22春“中药学”专业《药用植物学》在线作业含答案参考8.pdf
最近下载
- 工学一体化课程《小型网络管理与维护》任务4单元4教学单元活动方案.docx VIP
- 铜矿开采施工人员培训方案.docx
- 配电架空线路通道内树木砍伐修剪施工方案.docx VIP
- 中文网络成瘾量表修订版(CIASR).docx VIP
- 如何正确上颌架?.pptx VIP
- 《燕尾型配合工件说》课件.pptx VIP
- ISO 4210-8-2023中文+英文-自行车–自行车的安全要求-第8部分.pdf
- 超星尔雅学习通《中华民族共同体概论(云南大学)》章节测试答案.docx VIP
- T∕ZZB 1228-2019 强制式简易升降机.pdf VIP
- (正式版)S-H-T 3551-2024 石油化工仪表工程施工及验收规范.docx VIP
原创力文档


文档评论(0)