基础概念与定义
- 什么是扩展点
将代码或业务抽象成可自闭环的“模块”,比如在页面上的一个展示位置、比如业务逻辑中的一个处理function。一个模块就是一个坑位,但允许多种实现。简单来看,就是interface和多态。
- 业务身份
本次请求的特征,比如上一跳页面、APP、商品信息、实验等
- 槽位与具体实现
一个模块就是一个槽位,类比interface
- 注册表
扩展点全集,N个模块 x M个实现
- 注册注册表
将配置信息转换为注册表。而配置信息可以是任何内容,比如tcc、string、硬编码。
- 实现表
具体请求时,每个槽位仅能放入一种实现,N个模块 x 1个实现。
- 绑定实现表
实现表就是从注册表中copy了一部分出来。这个copy的过程就是绑定。
整体结构与执行流程
具体实现与代码
略