MVC 在ios开发中是始终贯穿的原则之一,使用MVC 可以更好地解耦合,对于应用的扩展性很有利。目前我的应用MVC的大概架构是Controller+Model,Handler,+块功能性View,单功能性View。
分开说,Controller:控制各种弹窗消息提示(可以把各式弹窗封装到BaseViewController中,用哪种弹窗时候就可以调用了),响应View的事件并做处理,在view生命周期中做响应的动作。
Model,Handler :Model 是封装数据模型,有关该模型的一些动作都可以在Model里面实现,比如对模型数据的格式化统一,获得某数据的衍生数据。Handler :处理一些复杂的数据任务,目前我把所有的网络请求封装到 Handler 中,只需调用接口就可以。另外其他的一些比较复杂的数据处理也可以放到Handler中,只需提供最后的结果给Conroller 调用。
块功能性View,单功能性View:块功能性View,几个 view 联合处理一个展示需求,比如包含Header和TablerView 的一个tableview 。Header,Table 都要求可以被点击,可以封装到一个view中,数据源从controller 获取,点击事件传给contoller处理。单功能性View,比如一个功能弹窗,可以选择时间,选好时间后传给代理,这里代理一般都是Controller。
如有更新我会再贴上来。