大部分中小企业都是用MVC框架理念,有一些会使用MVVM或者其他的框架理念,然而实际上在大部分一个项目只有1~3个ios工程师(实习的不算)的情况下,项目往往是框架理念,甚至会把项目搭建成MC结构。
首先我们认识什么是MVC结构,
问题一 程序员xib帮派:在此我特意强调controller而不是viewcontroller。喜欢使用storyboard和viewcontroller的xib的程序员,往往很难确保自己的项目能一直保持MVC结构,特别是当有实习生或别的开发者介入的时候,项目框架结构就会崩溃。例子:storyboard或xib(viewcontroller)中添加了一个UIButton。
view的数据来自于controller,copy一份数据不是良好的习惯。xib可以用于此处,UIView和cell都可以使用xib辅助。
问题二 越来越庞大的controller:网络请求,蓝牙处理,数据处理,请在controller中处理,而这也许会让controller变得庞大,网络请求封装,蓝牙协议封装等等“设计模式”能帮到您。
程序员在view 中直接进行push或pop等跳转,并不是良好的习惯。
记住view仅仅做UI显示和自身UI的逻辑处理。凡是和别的View进行交互操作,请通过controller进行。view不要和model直接数据交互,请view去controller里面取数据。
问题三 项目迭代越来越不像MVC:MVC搭建项目最大的问题,是程序员的懒。明明一行代码,偏偏因为框架原因而需要写5行代码。请记住:高内聚,低耦合才是程序员应该追求的,而不是更快地敲代码。