B站直播间基于视图交互的架构演进
出处:
mp.weixin.qq.com
作者:
杜峰
1. B站的直播间作为整个APP中交互最为复杂的单页面之一,其承担的业务量已经不亚于一个小型APP。对比APP的结构会发现许多相同处,但与组成APP的各个独立Activity不同,直播间由各个独立的视图组成。 2. 业务逻辑基于MVVM的设计分为三层(Service即M层),理想状态下各个业务间的交互是内聚的,各业务间不会感知到其他业务的存在,View显示需要的数据和状态都由各自对应的ViewModel提供。 3. 现实情况中业务交互并没有那么理想,直播间中的一个View显示的数据会受到其他业务的数据、状态影响,因此一个View除了需要处理自己内聚的逻辑为还需要关心其他View的数据变化。