本文针对oc,因为swift的变态特性真心方便,什么多继承,生成器函数思想等等,开发起来感觉是不一样的。
首先我们的困扰是:
vc中诸如tableview等带协议方法的控件 - 多
导致一个vc代码量巨多,看都不想看
为了将vc瘦身(瘦身好处都有啥,谁说对了金坷垃就给他)
本文借鉴大师们的思想提炼一个心诀:
表-里-分-明
表:看得见的数据展示-交给vc
里:看不见的数据操作-交给服务生
个人天真的认为:
苹果是想告诉我们一个app就像一出话剧或电影
1.storyboard -- 一个故事的导演,将一幕幕安排好
2.mvc架构模式
vc -- 展示的舞台,一幕幕场景
view -- 演员在舞台表演
model-data -- 台词,道具等一切服务于电影话剧的信息
3.然后我们是不是需要一些幕后人员
场务,道具师啊,灯光师啊,跑腿的,打杂的,等等等等
没错 瘦身的关键就是这些幕后人员
专业术语--服务层--数据仓库层
我是导演天才兼天才演员,哈哈哈哈
开胃菜:你们不就是要两个鬼协议delegate&&datasource,
谁又没有规定实现协议的代理人一定要是vc,主要是vc方便,老外写书告诉我是他们不想导别的实现协议的类的头文件,而且vc管view天经地义,但是!!! 丞相事无巨细,注定过劳死。
那么就让其他人帮vc完成一些任务吧。
取百家之长
1.网络下载操作和数据操作--放入model的分类中:利用block,完成服务层于vc间的通信。
2.datasource & delegate 分别另建立新类(swift就是不想让我们多建类)取实现代理方法 充当代理人。
未完待续。