扩展点框架介绍

33 阅读1分钟

基础概念与定义

  1. 什么是扩展点

将代码或业务抽象成可自闭环的“模块”,比如在页面上的一个展示位置、比如业务逻辑中的一个处理function。一个模块就是一个坑位,但允许多种实现。简单来看,就是interface和多态。

  1. 业务身份

本次请求的特征,比如上一跳页面、APP、商品信息、实验等

  1. 槽位与具体实现

一个模块就是一个槽位,类比interface

  1. 注册表

扩展点全集,N个模块 x M个实现

  1. 注册注册表

将配置信息转换为注册表。而配置信息可以是任何内容,比如tcc、string、硬编码。

  1. 实现表

具体请求时,每个槽位仅能放入一种实现,N个模块 x 1个实现。

  1. 绑定实现表

实现表就是从注册表中copy了一部分出来。这个copy的过程就是绑定。

整体结构与执行流程

image.png

具体实现与代码