iOS開發 開發過程中單例模式的使用

2021-08-07 19:45:38 字數 581 閱讀 2000

一、單例模式的基本資訊

1.單例模式的作用:程式在執行過程中,可以保證乙個類只有乙個例項,而且這個例項容易於方便工程外部的訪問,進而方便地控制了例項的個數,並且節約了系統資源。

2.單例模式的使用場景:在整個應用程式之中,共享乙份資源,這份資源只用初始化一次即可。單例模式在mrc和arc兩種環境下的寫法是有區別的,這裡只對arc環境下的寫法做介紹,mrc的不再這裡介紹。

二、單例模式的具體實現步驟

大概步驟分為四步:(1)在類的內部保留乙個static修飾的全域性變數(2)提供乙個類方法,方便外界訪問(3)重寫allocwithzone:方法,建立唯一的例項(4)重寫copywithzone方法。

1.在arc中單例模式的實現,需要在.m檔案中保留乙個全域性的static的例項變數,eg:static id _instance;

2.重寫allocwithzone:方法,建立唯一的例項,這裡要注意執行緒安全問題

+ (id)allocwithzone:(struct _nszone *)zone { 

if (_instance == nil) {  防止頻繁加鎖 

@synchronized(self) { <

iOS開發過程中,NSLog巨集定義

在專案開發的過程中,經常遇到要在除錯的時候列印log,但是上線或是release 的時候不需要去顯示log 的情況,此時你辛辛苦苦寫了那麼多的log,你要麼就手動注釋掉,要麼就是設乙個開關變數,企圖用這個總開關開啟。其實可以充分利用巨集定義進行設定。步驟比較簡單,只需要 在projectname p...

iOS開發過程中遇到的小問題

1.xcode6.1建立繼承自nsobject類的資料模型,如果需要加關於ui的屬性時需要加入uikit的標頭檔案。3.xocde6 官方的小bug,用storyboard建立的工程在4寸屏上執行時會出現上下黑條的現象,此時需要加乙個啟 方可解決此問題。4.設定view的偏移量 self.view....

開發過程中錯誤總結

1 18年5月28日 說明是.xml檔案的問題。去上.xml排查,看是不是註解。或者檔案本身書寫有誤。2 linux下 webstorm,ppt,wps不能書寫漢字。在啟動檔案中修改 啟動 sudo sh webstorm.sh export xmodifiers im fcitx export q...