2014-01-07 31 views
1

我正在嘗試構建一個需要將單詞和定義存儲在設備某處的flashcard應用程序。什麼是正確/最好的方式來存儲這些信息?我已經閱讀了有關預先填充核心數據的方法,但我讀過的解決方案看起來像是黑客。這似乎是許多應用程序所需的基本功能,所以我在這裏錯過了一些東西?爲ios離線flashcard應用程序存儲單詞

回答

1

核心數據是去這裏的路。關於預填充持久性存儲並將其包含在您的應用程序包中並沒有什麼不妥之處。

+0

在閱讀plists之後,我認爲Core Data是一條路。我需要存儲相當多的數據,絕對超過推薦用於plists的最大2MB。 – shoopdelang

0

核心數據看起來像flashcard應用程序的矯枉過正。我可能只是將內容保存到plist。這個內容是隻讀還是需要在運行時更新?

如果您需要更新它,您可以在啓動時複製文檔目錄中的plist複選框,如果它不存在,請將它從軟件包複製到文檔目錄中。您也可以使用與Core Data數據庫相同的方法,但除非您熟悉Core Data,否則學習它的學習曲線可能不像flashcard應用那樣簡單。

+1

核心數據如何過度殺傷? plist當然不是要做的記憶效率的事情。如果有任何變化,爲什麼要篩選整個數據? – Mundi

+0

@Mundi,我的意思是在努力方面的矯枉過正。核心數據很難包圍你的頭。如果你已經爬上了學習曲線,並且熟練掌握了它,那麼一定要使用它,但是對於flashcard應用程序,你有一個平坦的靜態數據庫。您不需要SQL查詢,索引搜索,連接,KVO更新或其他任何操作,因此Core Data的功能並沒有真正發揮作用。 –

+0

確實如此,但核心數據也很簡單。最有可能的是他必須記錄關於所查看的閃存卡的一些信息,所以它不是靜態的。我們也不應該對數據負載做任何假設。 – Mundi