懶載入其實就是延時載入,即當物件需要用到的時候再去載入。
----- 概括
什麼叫做需要用到的時候?比如說乙個物件被建立出來就需要一筆記憶體開支,如果接下來就沒有其他的操作(比如namutablearray物件還沒有被存放資料;uiview物件還沒有被顯示出來),那可以認為這個物件建立得「過早」了。
那如何使用懶載入呢?自從點語法出現以後,訪問乙個物件基本就類似於self.clickbtn或者是[self clickbtn],這都是呼叫的clickbtn的getter方法,因此就可以在getter方法中實現懶載入。
因此,懶載入其實就是所謂的重寫物件的getter方法,當系統或者開發者呼叫物件的getter方法時,再去載入物件。需要注意的是:重寫getter方法時,先判斷物件當前是否為空,為空的話再去例項化物件。比如:
- (nsarray *)personnamesreturn
_personnames;
}
懶載入的優點:
1. 不需要將物件的例項化全部寫到viewdidload中,可以簡化**,增強**的可讀性
2. 物件的例項化在getter方法中,各司其職,降低耦合性
3. 對系統的記憶體佔用率會減少
iOS懶載入有坑,使用懶載入時應該注意避免
如下面是乙個自定義的collectionview示圖的懶載入方法,當你呼叫 self.collectionview 後,此時 懶載入開始初始化,並返回collectionview例項物件,但是如果懶載入的 還沒有初始化完成並返回結果時,你再一次 self.collectionview 此時又會呼叫一...
mysql懶載入 mybatis懶載入
1.概念 懶載入就是按需載入,我們需要什麼的時候再去進行什麼操作。而且先從單錶查詢,需要時再從關聯表去關聯查詢,能很大提高資料庫效能,因為查詢單錶要比關聯查詢多張表速度要快。在mybatis中,resultmap可以實現高階對映 使用association collection實現一對一及一對多對映...
路由懶載入與元件懶載入
一 為什麼要使用路由懶載入 為給客戶更好的客戶體驗,首屏元件載入速度更快一些,解決白屏問題。二 定義 懶載入簡單來說就是延遲載入或按需載入,即在需要的時候的時候進行載入。三 使用 常用的懶載入方式有兩種 即使用vue非同步元件 和 es中的import 1 不用懶載入,vue中路由 如下 impor...