インターネットから情報を取得するために、foursquare およびその他のサーバー API を使用するアプリケーションに取り組んでいます。しかし、アプリケーションがインターネットに接続されていないときにいくつかのデータを使用する必要があります。これらのデータをインターネットから簡単に保存して、電話が接続を失った場合にキャッシュとして「ディスク」に保存する方法が必要です。基本的に、次のようなモデル クラスの一部を保存したいと考えています。
VenueCategory には、名前、ID、画像 (~10)、7 日間の天気予報、会場が含まれます。Venue には、画像、評価、名前、カテゴリ、categoryImage、住所、電話番号、営業時間のスケジュールが含まれています。水レポートには、日付、最高気温、最低気温、風などが含まれます。
3つの方法を考えていますが、どれが私の問題に最適かわかりません。より良いアイデアを教えてください.
データベース プロ: データから適切な表現が得られます。短所: アプリケーションが稼働中の場合、変更が困難です。会場カテゴリ用の新しいテーブルは必要ありません。テーブル内の 1 つのレコードにはテーブルが多すぎます。多くのクエリ、挿入、削除、更新などを行う必要があります。
シリアライゼーション クラス全体をディスクに書き込み、ディスクから読み取るだけの良い方法を見つけられれば簡単です (試したことはありません)。
Plist: (データベースと同様)
私の最後の質問は、どれが最高だと思いますか、そしてその理由は何ですか? もっと良いアイデアはありますか?