Objective-C 基本講座

出来事シミュレータ・オブジェクト版を作る

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
オブジェクト群をNSArray、NSMutableArrayに収納する方法を学習します。
講師:
05:34

字幕

このレッスンではオブジェクトの配列 を管理する方法を紹介します 1 週間の内に起こった出来事を記憶させ 再現するクラスを考えてみましょう シュミレーターと名付けます weekHistory メソッドでは 出来事を1 週間分発生させ履歴を取ります replay では weekHistory から戻された 履歴を使って 1 週間分に起こった出事を再現させます そしてシュミレーターは次のように使います 出来事もクラスとして用意します Event と名付け BookEvent DrinkEvent を派生させます 詳しい説明は省きますが Noneを送ると それぞれの出来事をコンソールに 出力するようにします weekHistory で行うことは 出来事の候補を配列で用意すること 7 日間のループの中で候補配列から1 つ ランダムに出来事を取り出すこと 取り出した出来事を配列に記憶すること となるのですが気になるのはこの配列に 従来の配列が利用できるのかという点です 配列の宣言なら問題はなさそうですが malloc などで配列を確保しようと するとコンパイラに注意されることになります オブジェクトは ARC で管理されているのですが ARC はmalloc で確保された 配列までは管理しきれないのです いろんな設定をして手間をかければ できないこともありませんがオブジェクトの 配列専用のクラスが用意されているので そちらのオブジェクトを使ってください オブジェクトの配列専用のクラスは NSarray と言います 基本的にオブジェクトの配列は NSarray で管理してください オブジェクトを収納管理するために 作られていてコンテナクラスとも呼ばれます 使っているイニシャライザー initWithObjectは 可変調の引数で収納したいオブジェクトを カンマで区切って並べるようになっています そして最後にもう収納したいオブジェクト はないという意味でnillを置きます 並べた順にオブジェクトが収納されます 収納されたオブジェクトは ObjectAtIndexで参照できます 引数には配列要素を指定する 添え字を指定します 添え字は通常の配列同様0 から始まります これに加えNSarray は 自分が収納しているオブジェクトの数を カウントプロパティから 調べることができるようになっています 値はNSU インテジア型という 整数型で戻されます そしてオブジェクトを 追加収納する場合に使うのが NSarray の派生クラス NSMutableArray です こちらはaddObject を使って 後からオブジェクトを追加収納できます addObject では追加したい オブジェクトを引数として渡します NSarray は非常によく使うので 特別にもう少し簡略化した記述方が 用意されています 例えばアロックしての initWithObject は @マークとブラケットペアを使い その中にオブジェクトを カンマで並べて書くことができます nillは不要です オブジェクターとインデックスは 配列の数字の書き方でも書くことができます また収納物の数でのフォーループ そしてその収納物の取り出しという処理は フォーインループでまとめることが可能です 目的が収納物を先頭から 末尾まで取り出して利用するループなら こちらを積極的に利用してください では実際に動かしてみましょう Xcode の画面に切り替えます weekHistory では 出来事交互の配列を作るのに @マークの略記を使っています リプレー側では フォーインループを使っています ランしてみます NSmutable を NSarray として戻していますが NSmutable はNSarray の 派生でありNSarray として 動作もするので問題ありません これもオブジェクト試行プログラミングの 特性です リプレーでは取り出しオブジェクトを イベントとして受け取り使っていますが 問題なく動作する点にも注目してください このレッスンではオブジェクトの配列を 管理する方法を紹介しました

Objective-C 基本講座

このコースはプログラミング初心者でもObjective-CによるiOSアプリ開発の体系的な理解が得られるように構成されています。プログラムの動作の原理、Objective-C言語の役割、そこで利用されるCocoa touchオブジェクトの役割、基本的なiOSアプリの作成方法などを学習します。ぜひこのコースをアプリ開発に踏み出すさいの第一歩としてください!

6時間39分 (69 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 3,990
発売日:2015年11月18日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。