iOS開発におけるパターンによるオートマティズム。iOSの設計方法を学ぶ。

iPhoneアプリ開発

iPhoneアプリを作成していて、ずっと疑問だったのが、プロクラムの作り方の部分。
普段COBOLerなため、オブジェクト指向がわからず構造化プログラミングになってしまっています。。入門書は部品の使い方、言語の基本的な部分の説明に大半がさかれており、全くよくわかりませんでした。新しいアプリを作成しているのですが、データを大量に扱うことになりそうで、いよいよヤバいなと。正しいアプリ設計ができていなければ確実に頓挫すると考え始めました。
そこで本棚を見回して、やっぱりちゃんと読んでみるかと手にとったのがコレ。

iOS開発におけるパターンによるオートマティズム
「iOS開発におけるパターンによるオートマティズム」です。
一年前に購入したものの、当時はサッパリわからず放置しておりました。確か売り文句に「どうやってアプリを作ればいいかわからない人に」というような事を言っていたはず。今かも知れないなと。

勢いに任せて一通り読んでみました。正直もっと早く読んでおけばよかったです。
個人的に参考になったのが以下について。

MVCモデルについて
設計という意味では基本中の基本だと思うんですが、iPhoneの初心者本を買ってもこの手の話は出てきません。概念的にはよく出てきますが、iPhoneアプリで具体的にコーディングレベルまで落として話をしてくれる資料は本当に見かけません。この本はRSSリーダーを例に設計の考え方を提供してくれます。ですので、データの持ち方、TableViewに代表される画面設計、それらを繋ぐコントローラがどのパーツにあたり、それぞれに何をコーディングすべきか具体的に記載されています。直近でわからなかったデータの持ち方は個人的にはとても参考になりました。Masterとなる親のモデルがあって、そこに入出力の命令を集約させる。APIですよね。なんとなくこうすればいいんじゃないかなとノーヒントで考えていましたが、どうやらそれで正解のようでした。これで先に進めます。

他にもネットワーク周りであったり、オブジェクト間での通知だったりと、アプリ開発を行うと確実に詰まる部分がうまく盛り込まれています。
この本をいきなり(1冊目とかに)読むと難しいですが、自分で試行錯誤してWebなりなんなりで試してみた上でこの本を読むと、スッと腹落ちするんじゃないかと思います。うまくアプリ開発の設計ができずに悩んでいる方、一読をオススメします。

<追記>
サンプルコードは以下の場所にありました。
http://code.google.com/p/koogawa/source/detail?r=153&path=/Automatism/readme.txt