阿里巴巴文档
文章平均质量分 91
weekendzhu
啊啊啊啊啊
展开
-
阿里巴巴开发手册编程规约个人解析(一)编程规约(一)命名风格(二)常量定义
文章目录1.编码规约篇1.1命名风格1.1.1 $与_1.1.2 拼音命名的坏处1.1.3 驼峰命名规格1.1.3.1驼峰命名1.1.4 类型与中括号紧挨相连来表示数组1.1.5 设计模式的命名1.1.6 接口方法和变量规约1.1.7 enum编程规约1.1.8 各层编码规约1.2常量定义1.3代码格式1.4 OOP规约1.5集合处理1.6并发处理1.7控制语句1.8注释规范1.9其他2. 异常...原创 2018-12-08 02:27:42 · 747 阅读 · 0 评论 -
阿里巴巴开发手册解析个人笔记(六)工程结构
文章目录(一)应用分层1. 【推荐】图中默认上层依赖于下层,箭头关系表示可直接依赖,如:开放接口层可以依赖于Web 层,也可以直接依赖于 Service 层,依此类推:2. 【参考】 (分层异常处理规约) 在 DAO 层,产生的异常类型有很多,无法用细粒度的异常进行 catch,使用 catch(Exception e)方式,并 throw new DAOException(e)3. 【参考】分层...原创 2019-01-07 21:26:16 · 774 阅读 · 1 评论 -
阿里巴巴开发手册解析个人笔记(五)Mysql规约(四)ORM 映射
文章目录ORM 映射1. 【强制】在表查询中,一律不要使用 * 作为查询的字段列表,需要哪些字段必须明确写明。2. 【强制】 POJO 类的布尔属性不能加 is,而数据库字段必须加 is_,要求在 resultMap 中进行3. 【强制】不要用 resultClass 当返回参数,即使所有类属性名与数据库字段一一对应,也需要定义; 反过来,每一个表也必然有一个 POJO 类与之对应。4. 【强制】...原创 2019-01-07 20:53:12 · 1866 阅读 · 0 评论 -
阿里巴巴开发手册解析个人笔记(五)Mysql规约(三)SQL语句
(三)SQL 语句1. 【强制】不要使用 count(列名)或 count(常量)来替代 count(), count()是 SQL92 定义的标准统计行数的语法,跟数据库无关,跟 NULL 和非 NULL 无关。说明: count(*)会统计值为 NULL 的行,而 count(列名)不会统计此列为 NULL 值的行。例子:摘自:https://blog.csdn.net/iFuMI/a...原创 2019-01-07 17:14:52 · 594 阅读 · 0 评论 -
阿里巴巴开发手册解析个人笔记(五)Mysql规约(二)索引规约
读者回复说 上一节这样子分类看着难受,还是按照原来的来文章目录(二)索引规约索引口诀1. 【强制】业务上具有唯一特性的字段,即使是多个字段的组合,也必须建成唯一索引。2. 【强制】超过三个表禁止 join。需要 join 的字段,数据类型必须绝对一致;多表关联查询时,保证被关联的字段需要有索引。2.1 题外话 为什么要小表驱动大表?3. 【强制】在 varchar 字段上建立索引时,必须指定索引...原创 2019-01-07 02:14:09 · 2397 阅读 · 4 评论 -
阿里巴巴开发手册编程规约(一)解析个人笔记(二)
文章目录1.2常量定义1.3代码格式1.4 OOP规约1.2常量定义1. 【强制】不允许任何魔法值(即未经预先定义的常量) 直接出现在代码中。反例String key = "Id#taobao_" + tradeId;,这时候我每次看这个变量我们都要去确认一下这个id究竟是指的是订单id还是商品id,还是用户id改正为final String orderTag= "Id#原创 2018-12-08 02:30:56 · 597 阅读 · 0 评论 -
阿里巴巴开发手册个人解析(三)单元测试
文章目录单元测试1. 【强制】好的单元测试必须遵守 AIR 原则。1.1 可重复性解析1.1.1Sql的可重复执行的策略表相关1.1.1.0一定要加use db_name;1.1.1.1 新增字段1.1.1.2创建索引1.1.1.3插入数据1.1.1.3新建表1.1.2单元测试的可重复执行2. 【强制】单元测试应该是全自动执行的,并且非交互式的。测试用例通常是被定期执行的,执3. 【强制】保持单元...原创 2019-01-06 00:53:09 · 1823 阅读 · 3 评论 -
阿里巴巴开发手册(二)异常日志个人解析
文章目录异常日志1. 【强制】 Java 类库中定义的可以通过预检查方式规避的 RuntimeException 异常不应该通过2. 【强制】异常不要用来做流程控制,条件控制。3. 【强制】 catch 时请分清稳定代码和非稳定代码,稳定代码指的是无论如何不会出错的代码。4. 【强制】捕获异常是为了处理它,不要捕获了却什么都不处理而抛弃之,如果不想处理它,请5. 【强制】有 try 块放到了事务代...原创 2019-01-05 17:16:33 · 1000 阅读 · 0 评论 -
阿里巴巴规约手册个人笔记编程规约(一)六、并发处理
1. 【强制】 获取单例对象需要保证线程安全,其中的方法也要保证线程安全。说明: 资源驱动类、工具类、 单例工厂类都需要注意。解析:使用单例模式时经常会被同时读与同时写,因为使用的是同一个变量,而内部的内容是大家共享的,经常会被多人读写由于静态内部类SingletonHolder只有在getInstance()方法第一次被调用时,才会被加载,而且构造函数为private,因此该种方式实现了...原创 2018-12-17 12:07:33 · 715 阅读 · 0 评论 -
阿里巴巴开发手册解析个人笔记(五)Mysql规约(一)建表规约
文章目录1.创建数据库2. 创建表2.1 创建名称2.2 创建索引3.创建字段3.1 创建名称3.2 创建类型4.sql的运行流程4.1解析4.2编写sql4.2.1 from 表4.2.2where4.2.3 聚合函数4.2.4 group-by4.2.5 having4.2.6 order by4.2.6 select4.2.7 update 与 delete5.优化5.1什么时候优化5.2 ...原创 2018-12-10 11:41:11 · 412 阅读 · 0 评论 -
阿里巴巴开发手册解析个人笔记(七)流程控制
注释规范为纯记忆,不再说明1. 【强制】在一个 switch 块内,每个 case 要么通过 break/return 等来终止,要么注释说明程序将继续执行到哪一个 case 为止; 在一个 switch 块内,都必须包含一个 default 语句并且放在最后,即使空代码。实例程序public class MainTest { public static void main(Stri...原创 2018-12-10 02:03:24 · 186 阅读 · 0 评论 -
阿里巴巴开发手册解析个人笔记一、编程规约(五)集合处理
文章目录1. 【强制】 关于 hashCode 和 equals 的处理,遵循如下规则:1) 只要重写 equals,就必须重写 hashCode。2) 因为 Set 存储的是不重复的对象,依据 hashCode 和 equals 进行判断,所以 Set 存储的对象必须重写这两个方法。3) 如果自定义对象作为 Map 的键,那么必须重写 hashCode 和 equals。说明: St...原创 2018-12-10 01:04:23 · 443 阅读 · 0 评论 -
阿里巴巴开发手册解析个人笔记(七 ) 设计规约
设计规约1. 【强制】 存储方案和底层数据结构的设计获得评审一致通过,并沉淀成为文档。说明: 有缺陷的底层数据结构容易导致系统风险上升,可扩展性下降,重构成本也会因历史数据迁移和系统平滑过渡而陡然增加,所以,存储方案和数据结构需要认真地进行设计和评审,生产环境提交执行后,需要进行 double check。正例: 评审内容包括存储介质选型、表结构设计能否满足技术方案、存取性能和存储空间能...原创 2019-01-07 21:43:54 · 528 阅读 · 0 评论