Cocoaプログラミングの再入門のつもりで,iPhoneプログラミングを勉強中です。
すでにご紹介してきたように,iPhoneプログラミング関連本がたくさん出版されました。こうしたiPhoneアプリ開発本の中で,どの本をよく参照しているのか,ぼちぼち定番が決まってきましたので,記録したいと思います。
今回は再入門〜中級プログラミングの範疇です。具体的には,Interface Bulderから卒業してコードプログラミングしたい,マルチタッチやグラフィック等の活用は後回しで,ネットの情報を取ってきてテーブルビュー上で操作閲覧していくタイプのアプリ開発,とりあえず実機テストまで試みている,という内容です。
必読ともいえる「iPhoneヒューマンインターフェイスガイドライン」というApple社の公式ドキュメントがありますが,そこに書かれている3つのアプリケーションスタイル(生産性型/ユーティリティ型/没入型)で言えば,生産性型アプリケーション,それを開発する場合といえます。
上の4冊を軸として,適宜必要な場合に次のような本を参照します。
あとはApple社公式ドキュメントのリファレンスものとサンプルコードを参照して進めています。
再入門なので,CocoaやObjective-C,開発環境に関しては一通りの確認と必要なときの参照で済ませる形になります。ちゃんと復習するならば『基礎からのiPhone SDK』もしくはMac開発本ですが『たのしいCocoaプログラミング』を押さえておくのがよいと思います。
あとは,分厚い『はじめてのiPhoneプログラミング』を根気よくなぞって,プログラムと動作結果の関係を確認していく作業を続けます。私の場合,第9章「ナビゲーションコントローラーとテーブルビュー」のところまで頑張り,そこからサンプルをアレンジしていく流れになりました。
同じくテーブルビューを使うサンプルで,インターネットからのデータをダウンロードして表示するものを扱っていたのが『iPhoneアプリケーションプログラミング』でした。簡易なXMLデータをつかった事例なので,XMLデータをパースする方法もここで試行錯誤して学びました。
また,他の本と比較して,この本はリファレンス性が高いので,自分のやりたい事柄に関係するメソッドを調べるときに便利だったりします。ただし,網羅されてはいないので,公式ドキュメントも手放せませんが...。
iPhone OS 3.0など新しい情報が欲しい場合や,セカンドオピニオン的に参照したい場合に活躍するのが『iPhone SDK3 プログラミング大全』になります。それぞれの解説がパーツを紹介するように掲載されているので,リファレンス性を狙った書籍です。が,なんでしょう...私個人としてはメソッド一覧のデザインがしっくりこなくて,信頼できるし頼ってもいますが,他と比べると参照頻度が低くなりやすいです。
それでもテーブルビューやネットワークに関する知識の確認,CoreDataに関する情報の整理などには,大変力を発揮してくれています。他のタイプのアプリを開発する場面で,まだまだ活躍してくれると思います。
まとまりのあるサンプルを通して解説をして,理解を助けてくれる書籍として『サンプルプログラムでマスターする iPhone SDKプログラミング実践ガイド』は意外と重宝しています。
頭の中は他の開発本のサンプルや解説,あるいは自分で勝手にアレンジしているコードの把握で混沌とした状態なので,逆にこの本のあっさりとした解説が有り難かったりします。amazonレビューに誰かが書かれているように,コードの詳細な解説がないため,コード読込みが慣れない人には取っつき難いかも知れませんが,コードを追いかけるのも慣れてきた人にはさっぱりした感じでよいのではないかと思います。
あとはObjective-Cに関して『詳解Objective-C 2.0』は無くてはならない参考書ですし,少し違う方向からの情報を得るために『iPhoneデベロッパーズクックブック』をみたり,コード中心でプログラミングをしていくにあたって『iPhone SDK アプリケーション開発ガイド』の情報も助けになります。
--
以上,再入門〜中級プログラミング(生産性型アプリケーション)を勉強中の私がよく参照している書籍を挙げてみました。書籍選びの参考になれば幸いです。
なお,入門〜初級プログラミング(たとえば没入型アプリケーション)といった場合には,また異なるチョイスがあり得ます。マルチタッチ操作によってアニメーションするようなグラフィック中心のものは,また違ったノウハウが必要で,それを詳しく扱っているのは別の本の可能性もあります。