データ組み込み


アプリの動作を実装した後、アプリのインターフェイスをサポートするための データモデル を作成します。アプリのデータモデルは、あなたのアプリで、データを保持する方法を定義します。データモデルは、基本的なオブジェクトの辞書から複雑なデータベースへまでの広い範囲に渡ります。良好なデータモデルは、簡単に、スケーラブルなアプリをビルドする事ができ、機能を改善し、機能を変更することができます。


アプリのデータモデルは、一貫性のある状態で、そのデータを保持するために必要なデータ構造および (オプションで) 独自のビジネスロジックで構成されています。アプリのユーザー・インターフェースからのまったく分離してデータモデルを設計したいと思ってはいけません。ただし、特定のビューまたはビューコントローラの存在に依存することなく、データモデルオブジェクトを別に実装したい場合は別です。あなたのデータを、ユーザーインターフェイスから分離するときは、簡単に iPad と iPhone 両方で実行できるユニバーサルアプリを実装でき、あなたのコードの一部を再利用しやすいでしょう。


ModelViewController_m_2x


モデルの設計


単に少量のデータを格納する必要がある場合は、Foundation フレームワークのクラスが、最良の選択肢かもしれません。自分自身で同じことを実装しようとする代わりに、どのような動作が利用可能か既にある Foundation・クラスを探しましょう。あなたのアプリが、文字列のリストを追跡する必要だけがある場合、NSArrayNSString に任せることができます。Foundation での作業 でこれらと他の、Foundation クラスについての詳細を学びます。


データモデルが、データを格納することだけではなく、独自の実務論理が必要な場合は、カスタムクラスを書くことができます。独自のクラスの実装に既存のフレームワーク・クラスを組み込む方法を検討してください。それらを再発明しようとする代わりにカスタムクラス内の既存のフレームワーク・クラスを使用することが有益です。たとえば、カスタムクラスは、情報を格納するために NSMutableArray を使用しますが、その情報を処理するための独自の機能を定義する事があります。


データモデルを設計するときには、心に留めておくべきいくつかの疑問は、次のとおりです。


どのようにユーザーはアプリを使用し、どのようなデータの種類を保存する必要がありますか? モデルは、アプリの内容や目的を反映していることを確認してください。ユーザが直接データをやり取りしなくても、インターフェイスとデータの間に明確な相関関係があるはずです。テキスト、文書、大きな画像、または別の種類の情報を格納しているかどうか、適切に特定の型の内容を処理するデータモデルを設計します。


どのようなデータ構造を使用することができますか? フレームワークのクラスを使用することができる場所と、カスタム機能を持つクラスを定義する必要がある所を決定します。


どのようにして、ユーザーインターフェイスにデータを提供しますか? あなたのモデルは、インターフェイスと直接通信するべきではありません。モデルとインターフェースの間の相互作用を処理するには、お使いのコントローラにロジックを追加する必要があります。


モデルの実装


チュートリアル:ストリーボード では、Objective-C プログラミング言語での作業を開始しました。このガイドでは、簡単なアプリをビルドする方法を教えていますが、あなた自身の完全に機能するアプリを書く前に、言語に精通したいと思うでしょう。


一部の人々は、Objective-C でプログラミング を読んで概念を学び、言語の理解を固め、良好なコードを書く練習をするために、小さなテスト・アプリを沢山書きます。他の人はすぐプログラミングに飛び込んで、何かを達成する方法がわからないときより多くの情報を探します。あなたがこのアプローチを好む場合は、 Objective-C でプログラミング を参照として維持し、概念を学び、開発するアプリにそれを適用するための練習をします。


最初のデータ·モデルを開発する上で最も重要な目標は、動くものを作ることです。データモデルの構造について慎重に検討するでしょうが、完璧にすることについて心配しないでください。それの実装を開始した後、モデルを反復処理し、改良することを恐れてはいけません。


実データの組み込み


最初にあなたのデータモデルをテストする時、モデルが組み立てられ、正しく接続されているとわかるまで、静的または偽のデータを使用できます。作業中のデータモデルを定義した後、あなたのアプリに実際のデータを入れることができます。





前の章:チュートリアル:ストーリーボード

次の章:デザインパターンを使用

目次
Xcode の新機能