泰山版Java开发手册
《Java开发手册》始于阿里内部规约,在全球 Java 开发者共同努力下,已成为业界普遍遵循的开发规范。今年是手册上线第四年,推出全新泰山版免费下载,涵盖三大更新亮点,直接下载一睹为快:泰山版Java开发手册
Java七天学习训练营Day6
Java七天学习训练营是由泰山版《Java开发手册》的作者亲自出题,每天学习一个知识点,写一份小作业,帮助你不仅是阅读,更能透彻理解泰山版《Java开发手册》的重要知识。
活动时间:5月15日截止提交完成打卡的同学名单
完成七天打卡挑战的少侠即有机会获得精美的阿里云开发者社区周边礼品,包含阿里云ET公仔、超大社区鼠标垫、卫衣、背包等等。
提示:每天需要从泰山版Java开发手册 进入,按照下方图示点击才算打卡成功哦!
奖品说明:
同学们获取奖品的顺序,以阿里妹收到同学完成打卡后填写的表单序号为主。
第1名和第100、200、300等100的倍数打卡的同学送一个阿里云ET公仔(限量10个)
第10、20、30名等10的倍数打卡的同学送一张超大鼠标垫(限量50个)
第6名、第66名、第666名(以此类推)打卡同学送一个阿里云双肩包
第8名、第88名、第888名(以此类推)打卡的同学送一件阿里云定制卫衣
第1000名打卡的同学送上一个机械键盘!
除此之外,打卡完成编号是质数的同学可以获得一份笔记本+贴纸的纪念品(限量30份)
(部分奖品展示)
阿里云ET公仔
超大开发者社区鼠标垫
阿里云定制双肩包
今日学习内容:二方库规约
阅读前需了解:
1.每日学习的知识点都节选自泰山版《Java开发手册》,如想完整阅读电子书的所有内容,请到专题页下载。
2. 根据约束力强弱,规约依次分为强制、推荐、参考三大类:
【强制】必须遵守。是不得不遵守的约定,违反本约定或将会引起严重的后果。
【推荐】尽量遵守。长期遵守这样的规定,有助于系统稳定性和合作效率的提升。
【参考】充分理解。技术意识的引导,是个人学习、团队沟通、项目合作的方向。
1. 【强制】定义GAV遵从以下规则:
1) GroupID格式:com.{公司/BU }.业务线.[子业务线],最多4级。
说明:{公司/BU} 例如:alipay/taobao/tmall/aliexpress等BU一级;子业务线可选。
2) ArtifactID格式:产品线名-模块名。语义不重复不遗漏,先到仓库中心去查证一下。
正例:tc-client / uic-api / tair-tool
3) Version:详细规定参考下方。
2. 【强制】二方库版本号命名方式:主版本号.次版本号.修订号
1) 主版本号:产品方向改变,或者大规模API不兼容,或者架构不兼容升级。
2) 次版本号:保持相对兼容性,增加主要功能特性,影响范围极小的API不兼容修改。
3) 修订号:保持完全兼容性,修复BUG、新增次要功能特性等。
反例:仓库内某二方库版本号从1.0.0.0开始,一直默默“升级”成1.0.0.64,完全失去版本的语义信息。
说明:任何中间件、中台业务、二方包都必须遵守此版本约定。起始版本号统一为:1.0.0,而不是0.0.1
3. 【强制】二方库定制包的命名方式,在上一条规定的版本号之后加“-英文说明[序号]”,英文说明可以是部门简称、业务名称,序号直接紧跟在英文说明之后,表示此定制包的顺序号。
说明:TDDL给SCM定制的版本号:1.0.0-SCM1。注:请尽可能在应用端来解决类冲突和加载问题,避免随意发布此类定制包。
4. 【强制】线上应用不要依赖SNAPSHOT版本(安全包除外);正式发布的类库必须先去中央仓库进行查证,使RELEASE版本号有延续性,且版本号不允许覆盖升级。
说明:不依赖SNAPSHOT版本是保证应用发布的幂等性。另外,也可以加快编译时的打包构建。
5. 【强制】二方库的新增或升级,保持除功能点之外的其它jar包仲裁结果不变。如果有改变,必须明确评估和验证,可使用jar包二进制兼容性检查工具。
说明:在升级时,进行dependency:resolve前后信息比对,如果仲裁结果完全不一致,那么通过dependency:tree命令,找出差异点,进行排除jar包;
反例:2014年,因二方库升级导致的P2以上故障数在统计榜上排名第一,大家需要高度重视。
6. 【强制】二方库里可以定义枚举类型,参数可以使用枚举类型,但是接口返回值不允许使用枚举类型或者包含枚举类型的POJO对象。
说明:由于升级原因,导致双方的枚举类不尽相同,在接口解析,类反序列化时出现异常。
今日作业
关于错误码定义与使用,你有什么好的实践?
同学们请把作业写在评论区里,如果出现了优秀作业,将再给该同学送出额外的礼品!
上期答案
正确的做法是a、b
c的错误原因:要保证信息的透明,上下游业务系统都可能会受到影响,他们也要有相应的处理措施
d的错误原因:actions做完后,必须验证通过,防止下次再次发生
阿里妹温馨提示:恭喜你完成了第六天的学习打卡!建议收藏专题页,每天记得上线打卡哦。只有连续七天坚持打卡,才有机会领取到奖品!