MBMvc 是一个iOS上的基于消息的MVC框架,也就是 Message Based MVC 的简称。
使M/V/C之间的交互全部通过 消息机制 来完成,不会相互引用,这样就不会因为有引用导致的各自生命周期的混乱。因为没有引用那么也会消灭由于循环引用导致的 内存泄露 和 野指针 导致的Crash。
通过消息话也能使UI逻辑和业务逻辑 异构, 直接在不同的线程运行不会相互干扰使UI更流畅。
而V/C 之间也提供了 数据Bind 的方式达到完全解耦,相互的交互通过 数据 来驱动,不会有直接引用,从而解决有回调而导致的Crash或内存无法被及时释放的问题。
而C/M 之间也可以通过proxy的方式让 方法执行直接被 消息化 (有点象异步HSF的样子)。这样消息是可以被拦截并重放的,就可以很简单的作AOP(已经支持拦截器)。
MBMvc 的一些小 tips