组件化开发之07 中间件的设计

原则上来说每个业务组件之间联系很少 ,比如消息模块 跟拼车 个人中心 不搭噶,拼车模块 只有一个 看图猜猜组件入口 ,一个心雨心愿组件入口,为了减少组件之间的依赖关系 ,就需要有个中间件去处理两个组件之间信息传递的问题.

YVMediatorLib 是利用 Targe-Action runtime时候去跟其他组件发送消息

image.png
组件化开发之07 中间件的设计_第1张图片
image.png
组件化开发之07 中间件的设计_第2张图片
image.png

APP 中有很多地方需要用户登录 这个时候该怎么设计,笔者使用YVThirdPart 中 YVRealmHelper组件中的一个宏定义

组件化开发之07 中间件的设计_第3张图片
image.png

kNeedLogin 会调用 YVMediatorManager 内部的 showLoginViewController 方法

这样不同业务组件之间 需要登录时候 并不会之间去依赖 LoginModule 组件 而是通过基础组件 中间件 去查找 showLoginViewController这个方法 如果无法响应 那么久不会打开登录页面控制器 并不会发生 crash 现象

组件化开发之07 中间件的设计_第4张图片
image.png

你可能感兴趣的:(组件化开发之07 中间件的设计)