“一个优秀的工程师和一个普通工程师的区别,不是满天飞的架构图,他的功底体现在所写的每一行代码上。”——阿里毕玄
为何需要编码规范
编码是个十分复杂的工程,最重要的是团队合作。一个复杂的软件系统不可能只由一个人开发,既然需要团队合作,那么规范就比编码本身更为重要。
代码是给别人看的,优秀的代码需要做到自解释。
- if 后面的大括号到底需不需要换行?
- 到底是用 4 个空格还是 4 个 Tab?
- 实体类如何命名?
- 成员变量如何命名?
- 线程池如何使用才能方便排错?
- 如何避免 if-else 逻辑过多,过于复杂?
- 什么时候需要进行数据校验?
- 怎么打日志?
- 单元测试的原则
- 如何防止被攻击、信息泄露?
- 数据库和索引的规范
- 工程结构如何分层?
阿里巴巴 Java 开发手册
阿里巴巴的孤尽编写的《阿里巴巴 Java 开发手册》经过两年的推广,现在基本算是行业的一个标准了,尽管在大部分公司不是所有规则都严格执行,但基本的规则大家都会严格遵守,博主公司就通过 sonar 检查强制大家遵守阿里的规范,不通过 sonar 检查不准发布。
孤尽有句话说得好:
一流企业卖标准,二流企业卖专利,三流企业卖服务,四流企业卖产品
阿里作为国内技术第一大厂,基本属于国内的规则制定者,集结了中国大部分最优秀的人才,不断输出技术框架和标准,阿里之前的 RPC 框架 dubbo 就捐献给了 Apache,使中国软件行业向前走了一大步。
Dubbo是否进入 Apache 开源孵化器投票邮件Dubbo 获得了 14 张赞成票,在无弃权和反对票的情况下,正式通过投票,顺利成为 Apache 基金会孵化项目。
Dubbo正式进入Apache开源孵化器《阿里巴巴 Java 开发手册》介绍
书中介绍了编码规约、设计规约、工程结构、MySQL 数据库、安全规约、单元测试、异常日志,涵盖了工作中的几乎所有场景吧。非常值得一读,我就买了一本放在工位上,作为工具手册,没事翻一翻。
image目录
- 第1章 编程规约 1
- 1.1 命名风格 2
- 1.2 常量定义 7
- 1.3 代码格式 9
- 1.4 OOP规约 14
- 1.5 集合处理 21
- 1.6 并发处理 28
- 1.7 控制语句 33
- 1.8 注释规约 38
- 1.9 其他 41
- 第2章 异常日志 43
- 2.1 异常处理 44
- 2.2 日志规约 49
- 第3章 单元测试 53
- 第4章 安全规约 59
- 第5章 MySQL数据库 63
- 5.1 建表规约 64
- 5.2 索引规约 68
- 5.3 SQL语句 72
- 5.4 ORM映射 75
- 第6章 工程结构 79
- 6.1 应用分层 80
- 6.2 二方库依赖 83
- 6.3 服务器 87
- 第7章 设计规约 89
- 附 录 专有名词 94
下载和在线阅读 & 插件
《阿里巴巴 Java 开发手册》在 Github上有维护
插件
周边表情包
83行代码蓝雁贴纸及公仔
image.png 3fb7675d452cdc5a745bf5626885e397ec03df59.gif 59b69a91238544446e7dd0533847f1a0a0f1fa62.gif 9634d9dd105097cd885781f08e7ab586bb82c1a8.gif cf16f7d4a32a3f497aa09002a77eae61d93fc586.gif a97430958aed1e6f1b89146d75f0d293c4bcfe56.gif关注微信
- 在微信公众号「学霸的一天」,回复「java 开发手册」下载《阿里巴巴 java 开发手册》中文最新版
网友评论