iOS开发进阶-VC瘦身内功心法

本文针对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就是不想让我们多建类)取实现代理方法 充当代理人。

未完待续。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • iOS网络架构讨论梳理整理中。。。 其实如果没有APIManager这一层是没法使用delegate的,毕竟多个单...
    yhtang阅读 5,252评论 1 23
  • 懒加载: 也就是延迟加载,以UI控件为例,通常用到这个控件的时候再进行一系列的初始化操作,在移动端中,内存相形见绌...
    ManoBoo阅读 1,029评论 7 7
  • A财富目标三个月内 1,公司三个月以内收入50万 2,自己可以独立承担自己的责任。 3,自己存的20万的货品可以在...
    雪痕情阅读 131评论 0 4
  • 明明负债中,心里反复强调不能再买衣服了,可到了商场,种种暗示都烟消云外了,之后又是后悔。现在两人每年的消费支出都远...
    如果如是阅读 193评论 0 0