- 懶加載——也稱為延遲加載,即在需要的時候才加載(效率低,占用內存小)。所謂懶加載,寫的是其get方法.
注意:如果是懶加載的話則一定要注意先判斷是否已經(jīng)有了,如果沒有那么再去進行實例化。
- 使用懶加載的好處:
(1)不必將創(chuàng)建對象的代碼全部寫在viewDidLoad方法中,代碼的可讀性更強
(2)每個控件的getter方法中分別負責各自的實例化處理,代碼彼此之間的獨立性強,松耦合
單例模式是一種常見的設計模式。“單”是指唯一性,“例”是指實例化對象,也就是使某個類的一個對象成為系統(tǒng)中的唯一實例。
單例是指靜態(tài)分配的實例,而iphone sdk 中全是這種實例,例如[UIApplication sharedApplication] 返回一個指向代表應用程序的單例對象的指針。[UIDevice currentDevice] 獲取一個代表所有使用硬件平臺的對象。
將類方法與單例相結合,便可以在程序的任何地方訪問靜態(tài)實例,而無需使用指向對象的指針或保存它的實例變量。
- 這樣有什么優(yōu)點呢?
1.在內存中只有一個對象,節(jié)省內存空間。
2.避免頻繁的創(chuàng)建銷毀對象,可以提高性能。
3.避免對共享資源的多重占用。
4.可以全局訪問。
- 實例化的類一般都是有自己的內部數(shù)據(jù)有自己的生存周期,內部一系列的復雜的邏輯或數(shù)據(jù)處理.因此各個實例化后的對象之間互不相干,獨立運行.
- 至于靜態(tài)方法一般都是進行一系列比較單一的數(shù)據(jù)處理,這些數(shù)據(jù)往往都是由外部傳過來,進行相應的操作后返回.他不需要維護比較復雜的生命周期,方法調用完后就跟他沒什么關系了.