Java开发规范(参照阿里规范改编).pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 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 *

文档评论(0)

洞察 + 关注
官方认证
文档贡献者

博士生

认证主体宁夏三科果农牧科技有限公司
IP属地宁夏
统一社会信用代码/组织机构代码
91640500MABW4P8P13

1亿VIP精品文档

相关文档