2014-07-24 71 views
0

我正在製作一個包含數千張閃存卡的iOS應用程序,其中包含問題。問題池有大約10,000個問題,分爲5類。一個問題只能有一個類別。類別不會改變,它們是固定的。問題只是文字。沒有涉及的圖像。CoreData性能重複實體與屬性

我考慮兩種方法:

1)在它的類別字段(INT)的問題創建一個實體。

獲取結果以僅獲取特定類別的問題。

2)創建5個實體,所有實體都具有相同的字段,但類別除外,該類別具有與類別相對應的默認值。

爲什麼選擇2? 我認爲選項1)是乾淨的,但應用程序有很多問題,我認爲提交查詢過濾特定的字段,可能比檢索完全不同的實體要慢。我從SQL的角度思考,可能在一個表上執行SELECT,然後在另一個表上執行SELECT,應該比同一個表上的SELECT ... WHERE更快?

回答

0

我同意你,選項1是乾淨的適當的一個。從另一個實體中檢索該類別將增加最小的開銷。而且,如果你必須編輯一個類別,你只需要修改一個條目。您還可以更輕鬆地添加其他類別。

如果你真的關心性能(我認爲你不應該在這一點上),你可以編寫代碼並進行速度測試。但這確實是矯枉過正,差距可能微不足道。