对于UI控件学习的总结(一):懒加载

自己研究了这么长时间,觉得应该写一些东西出来,对与别人或者自己在以后想看的时候,能够有帮助。

废话不多说,下面我们就看一下iOS中的懒加载到底是怎么一回事


懒加载:

1、基本定义:

     延时加载,即当对象需要用到的时候再去加载。其实就是所谓的重写对象属性的getter方法,当系统或者开发者调用对象的getter方法时,再去加载对象。(注意:在重写getter方法时,先要判断当前的对象是否为空,如果为空的话再去实例化对象


2、懒加载的优势:

      首先,懒加载并不需要在viewDidLoad中去实例化对象,从而减少了代码的冗余性,增强代码的可读性

      其次,懒加载对象的实例化是在getter方法中,降低了代码的耦合性

      最后,懒加载降低了对于系统内存的占用率(最常见的懒加载对象:self.view


3、代码展示

       

//懒加载:在合适的地方创建
//重写getter方法
//一旦使用懒加载,程序中所有使用到这个属性,都要使用getter方法

-(NSMutableDictionary *)dataDict
{
    //注意 :在懒加载中需要使用getter方法的地方都使用实例变量
   
    if (_dataDict == nil) {
       
        //使用setter方法的时候,就使用self
        self.dataDict = [NSMutableDictionary dictionary];
        [self makeData];
    }
   
    return _dataDict;
}

//正常写法(非懒加载)
//用于对比懒加载
@interface ViewController ()

@property (nonatomic, strong) NSMutableDictionary *dataDict;

@end

@implementation ViewController

- (void)viewDidLoad {

    [super viewDidLoad];

    self.dataDict = [NSMutableDictionary dictionary];
}

@end


4、对于懒加载的使用的注意事项

        我们习惯于把一个控件作为懒加载对象,而对于容器类尽量不要作为懒加载对象。






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值