博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《码出高效:Java开发手册》背后的故事
阅读量:6529 次
发布时间:2019-06-24

本文共 1608 字,大约阅读时间需要 5 分钟。

2018年12月22日,由博文视点组织的《码出高效:Java开发手册》作者见面会暨签售仪式在北京举行,InfoQ对书籍作者孤尽(杨冠宝)、鸣莎(高海慧)进行了采访,了解了此书出版背后的一些细节。

《码出高效:Java开发手册》由电子工业出版社于2018年10月份首次出版发行。本书结合一线的开发实践以及JDK中的设计理念,是面向初学者的Java学习指南,也是Java编码的最佳实践。同时,它也是之前阿里发布的《Java开发手册》中代码规约的来龙去脉的一个全面梳理,解释规约是怎么来的。

225fbf05add13cf24dd72983e0f9e47a.jpeg

《码出高效》最早在2018年9月杭州云栖大会上宣布,包括马云、行癫、鲁肃都为该书写了推荐,该书的编委会包括毕玄、索尼、多隆等阿里的技术高管,也对该书的问世起了大力推动作用。指南2017年初,阿里发布《阿里巴巴Java开发手册》,首次公开阿里官方Java代码规范标准。手册涵盖编程规约、单元测试规约、异常日志规约、MySQL规约、工程规约、安全规约等,这是近万名阿里Java技术精英的经验总结,并经历了多次大规模一线实战检验及完善。同时阿里也发布了开源的Java规约IDE插件,以帮助企业和个人使用规约。

Java开发手册的作者孤尽是阿里集团代码中心的负责人,在阿里历任技术研发、架构师、部门主管等不同角色,承担过双十一、国际化、代码中心等大型项目,在大数据、高并发、分布式、代码效能等领域均有较深造诣。书籍合作作者鸣莎是阿里云资深开发工程师,先后在阿里集团B2B技术部和阿里云任职,承担过商业化、双十一、智能调度及10亿/天的信息采集系统建设等大型项目。

据孤尽介绍,阿里集团目前的代码量十分庞大,所有代码加起来容量达到35TB。阿里将代码视为最重要的数字资产之一,每次投资并购后做的第一件时间就是拿到对方的代码。如此庞大的代码库,离不开流程和标准的制定,但Java社区里并没有一份比较全面的,能适合阿里集团使用的代码规范,于是集团决定打造自己的Java规约并在全集团内推广,这就是Java开发手册诞生的背景。

阿里在Java领域钻研很深,不仅使用Java开发的全球访问量最大的服务器集群,还推出了自己的AliJVM,发布了如Dubbo、JStorm、fastjson等Java开源项目,最近还连续两年获得JCP委员会席位,在国际Java社区的影响力也日渐扩大,阿里将规约对外公布,也可视为对Java社区的回馈。自规约公布并发布英文版本后,也得到了国外开发者的赞誉。

目前,阿里Java规约已经在社区得到广泛的应用,据孤尽介绍,规约p3c插件在外部下载量超过56万,并且已有一些大公司采用。在阿里内部,规约已经覆盖菜鸟、蚂蚁金服,成为整个阿里经济体规范,p3c插件已经覆盖了90%的Java团队,日活超过40%,累计扫描出的潜在错误高达1亿个。

不过,代码规范的推广并不容易,即使是在阿里内部。因为有些团队有自己的规范,在不同规范之间切换需要成本,而切换之后对其本身在短期内很难看到明显的收益。最终,这个规范还是在集团的技术高层的强力推动下执行下去了,现在阿里招进的Java新人,在培训的时候第一课就是学习规约。阿里还打造了配合规约的认证考试,不仅集团内部要考,还对外部开放了。

在书籍的最后,孤尽提到,要在团队内部推广规范,需要做到三点:

  • 立法透明:规约的每一条应该尽量由团队讨论得出,达成共识,规约还要根据技术的发展而变化;
  • 执法坚定:需要用强有力的约束来保证规约得到遵守,也要通过软性的文化建设来培养对代码质量的重视;
  • 组织支持:规约是一个管理决定,在推进过程中经常遇到各种抵触和困难,需要组织坚定推进的决心,给予权限和资源等方面的支持。

在9月份的云栖大会上发布《码出高效》书籍的时候,团队还宣布书籍的收入将全部捐献给公益项目,资助残障人士学习编程。孤尽等也希望这本书能帮助到更多喜欢编程的人,促进Java生态的健康发展。

转载地址:http://mbxbo.baihongyu.com/

你可能感兴趣的文章
session_start()放置位置的不正确引发的ROOT常量 未定义的错误
查看>>
如何设定VDP同时备份的任务数?
查看>>
ipsec的***在企业网中的经典应用
查看>>
过来人谈《去360还是留在百度?》
查看>>
mysql备份工具innobackupex,xtrabackup-2.1安装,参数详解
查看>>
【复制】slave筛选复制之二(create/drop table语句)
查看>>
Movie Store OpenCart 自适应主题模板 ABC-0249
查看>>
mytop-MySQL监控工具
查看>>
RedHat linux YUM本地制作源
查看>>
apache端口占用问题
查看>>
本地Office Project计划表同步到SharePoint2013任务列表的权限问题
查看>>
Windows2008 R2 GAC权限问题
查看>>
洛谷——P1469 找筷子
查看>>
几句话就能让你明白:网络地址转换(NAT)
查看>>
springboot项目自定义注解实现的多数据源切换
查看>>
如何用javascript正则表达式验证身份证号码是否合法
查看>>
ccf 201803-1 跳一跳(Python实现)
查看>>
特此说明
查看>>
使用flume替代原有的scribe服务
查看>>
用脚本来定制ESXI安装镜像
查看>>