@南峰子_老驴 开源了一个轻量的Objective-C分层框架:Minya,基于MVCS和KVO。
据其介绍,框架的目标主要有几点:
- 均衡代码在各层的分布,避免产生过于庞大的业务逻辑处理类;
- 各层各司其职,专职做自己的事;View层显示数据和获取用户输入;View Controller层负责横向的跳转和数据传输;Store层负责业务逻辑的处理;Service负责网络数据的请求及部分返回数据的处理;Storage负责本地数据的读写删除;Model负责数据表示数据并做轻量的业务逻辑处理;
- View/View Controller/Store三层依赖于一个共享的Pipeline对象,Pipeline负责数据在三层之间的传输,三层对象通过KVO来监听Pipeline的属性并执行相应操作;除此之外,下层只对上层提供必要接口。
Minya更多的是提供一种思路和一种解决方案,有优点也有缺点,在文档里面有描述。文档写得比较匆忙,后续会继续优化,并写一些总结。