2013-08-05 31 views
0

我的核心數據對象變得臃腫性能(10總共2 BOOL,5的NSString,3 NSDate的)核心數據對象模型已經變得相當臃腫

,現在我想還沒有添加其他幾個屬性。這個對象是我整個應用程序的中心數據對象,所以它需要很多屬性。我在某處讀過一些人將單個對象分隔成2個或更多核心數據實體。什麼是最佳做法?

+2

檔案。如果它成爲一個問題,然後研究它,但不要過早地優化。核心數據在錯誤和延遲加載方面非常好。 – danielbeard

+0

@danielbeard你是什麼意思的個人資料?並感謝您的提示 – Apollo

+0

打破許多實體和使用關係。 – Jack

回答

1

除非你能證明我,否則10個屬性根本就不是問題。

+0

它取決於字符串中的內容 –

0

你可以膨脹你的單個核心數據實體的許多屬性和關係。核心數據適用於通過延遲加載檢索數據,並自動自行管理。因此,不要擔心你不會遇到記憶稀缺問題。 :)

+0

雖然這可能適用於關係(在訪問之前一直存在錯誤),但屬性並非如此。故障對象將保存內存中的所有屬性值。如果屬性「膨脹」對象(blob,大字符串,...)使對象失效可能會變得昂貴。 –

0

在「編輯方案...」選擇左側運行的應用程序,並在右側「啓動時傳遞的參數」添加「-com.apple.CoreData.SQLDebug 1」它會告訴你在你的日誌sqlite查詢時間。

你只是想不優化SQLite的查詢有關的核心數據,只是用解釋來分析它

只專注於查詢時間和優化

核心數據不僅存儲數據和查詢,還提供PersistentStore。

我認爲,核心數據是框架,sqlite的,如MySQL,PersistentStore像小內存緩存,你

從源碼獲得一次,污物在PersistentStore