编程原则之接口适配原则
2023-01-10 本文已影响0人
Assassin_1397
定义
如果一个底层逻辑需要服务多个应用场景,那么应该保持暴露独立
例子
假如有一个访客访问,它需要满足同一个后台服务于不同低区:北京、上海、香港,但是不同地区允许有不同需求,且不同对接不同供应商。已知不同地区的需求可能在未来需要改变,每个供应商需求改动都需要收取甲方费用。
解决方案
- 单一核心服务方案
单一核心服务方案
优点
- 只有一个核心
- 每个低区接口只与核心通信
- 便于产品统一把控需求
缺点 - 核心修改,所有适配接口都需要调整,例如设置缺省值
- 核心功能扩展,可能影响适配接口功能
- 实现复杂度高
- 区域隔离方案
区域隔离方案
优点
- 每个服务对立,可以各自扩展,灵活度高
- 实现简单
缺点 - 产品服务各异,随着迭代各个服务差异越来越大
- 相同逻辑冗余,不同开发人员实现不同,可能表现不一致
- 开发工作量起初与单一核心类型,但是随着功能扩展相较于单一核心会增加