1.什么是懶加載髓霞?
懶加載其實就是延時加載,即當對象需要用到的時候再去加載。
2.什么叫做需要用到的時候邑闺?
比如說一個對象被創(chuàng)建出來就需要一筆內(nèi)存開支,如果接下來就沒有其他的操作(比如NSMutableArray對象還沒有被存放數(shù)據(jù)棕兼;UIView對象還沒有被顯示出來)陡舅,那可以認為這個對象創(chuàng)建得“過早”了。
3.如何使用懶加載呢伴挚?
自從點語法出現(xiàn)以后靶衍,訪問一個對象基本就類似于self.clickBtn或者是[self clickBtn]灾炭,這都是調(diào)用的clickBtn的getter方法,因此就可以在getter方法中實現(xiàn)懶加載颅眶。
因此蜈出,懶加載其實就是所謂的重寫對象的getter方法,當系統(tǒng)或者開發(fā)者調(diào)用對象的getter方法時涛酗,再去加載對象铡原。需要注意的是:重寫getter方法時,先判斷對象當前是否為空商叹,為空的話再去實例化對象燕刻。
4.懶加載的優(yōu)點?
1)不需要將對象的實例化全部寫到viewDidLoad中沈自,可以簡化代碼酌儒,增強代碼的可讀性
2) 對象的實例化在getter方法中,各司其職枯途,降低耦合性
3) 對系統(tǒng)的內(nèi)存占用率會減少