#pragma mark - init and dealloc
// 初始化和析构
#pragma mark - View Life
//视图生命周期
#pragma mark - Setup
//创建视图等
#pragma mark - Lazy Load、Getter、Setter
//懒加载、Getter和Setter
#pragma mark - Public Methods(控制器类.h中声明的方法)
#pragma mark - Event、Callbacks
//事件、回调等(触摸事件,通知,定时器事件,其他的注册事件等)
#pragma mark - Delegate And DataSource
//代理和数据源方法
#pragma mark - Private
//私有方法
//关于private methods,正常情况下ViewController
//里面不应该写
//不是delegate方法的,不是event response方法的,
//不是life cycle方法的,就是private method了
对的,正常情况下ViewController里面一般是不会存在private methods的,这个private methods一般是用于日期换算、图片裁剪啥的这种小功能。这种小功能要么把它写成一个category,要么把他做成一个模块,哪怕这个模块只有一个函数也行。
ViewController基本上是大部分业务的载体,本身代码已经相当复杂,所以跟业务关联不大的东西能不放在ViewController里面就不要放。另外一点,这个private method的功能这时候只是你用得到,但是将来说不定别的地方也会用到,一开始就独立出来,有利于将来的代码复用。
认真看是不是发现了其实很多的业务逻辑我们都能通过category
的方式从Controller
中分离出去。在这里我非常同意Casa大神的话:不应该出现私有方法
。对于控制器来说,私有方法基本都是数据相关的业务处理,将这些业务通过category
或者策略模式分离出去会让控制器更加简洁
作者:sindri的小巢
链接:https://www.jianshu.com/p/4847c9a1e19b
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。