21.
選擇正確的資料儲存選項
當儲存大塊資料時你會怎麼做?
你有很多選擇,比如:
·
使用`nsuerdefaults`
·
使用xml,json,
或者plist
·
使用nscoding存檔
·
使用類似
sqlite
的本地sql
資料庫
·
使用coredata
nsuserdefaults
的問題是什麼?雖然它很
nice
也很便捷,但是它只適用於小資料,比如一些簡單的布林型的設定選項,再大點你就要考慮其它方式了
xml這種結構化檔案呢?總體來說,你需要讀取整個檔案到記憶體裡去解析,這樣是很不經濟的。使用
sax又是乙個很麻煩的事情。
nscoding
?不幸的是,它也需要讀寫檔案,所以也有以上問題。
在這種應用場景下,使用
sqlite
或者core data
比較好。使用這些技術你用特定的查詢語句就能只載入你需要的物件。
在效能層面來講,
sqlite
和core data
是很相似的。他們的不同在於具體使用方法。
core data
代表乙個物件的
graph model
,但sqlite
就是乙個
dbms
。在一般情況下建議使用
core data
sqlite吧。
如果你使用
sqlite
,你可以用
這個庫來簡化
sqlite
的操作,這樣你就不用花很多經歷了解
sqlite
的c api
了。
iOS應用效能調優的25個建議和技巧 4
4.避免過於龐大的 xib ios5 中加入的 storyboards 分鏡 正在快速取代 xib。然而 xib在一些場景中仍然很有用。比如你的 需要適應 ios5 之前的裝置,或者你有乙個自定義的可重用的 view,你就不可避免地要用到他們。如果你不得不 xib的話,使他們盡量簡單。嘗試為每個 c...
ioS應用效能調優的25個建議和技巧 8
開啟 gzip 壓縮 大量依賴於遠端資源和第三方 apixml,json,html 或者其它格式的。問題是我們的目標是移動裝置,因此你就不能指望網路狀況有多好。乙個使用者現在還在 edge 網路,下一分鐘可能就切換到了 3g。不論什麼場景,你肯定不想讓你的使用者等太長時間。減小文件的乙個方式就是在服...
iOS應用效能調優的25個建議和技巧 10
10.cache,cache,還是cache 乙個極好的原則就是,快取所需要的,也就是那些不大可能改變但是需要經常讀取的東西。我們能快取些什麼呢?一些選項是,遠端伺服器的響應,甚至計算結果,比如 uitableview 的行高。nsurlconnection 缺省會快取資源在記憶體或者儲存中根據它所...