iPhoneアプリ開発の始め方


1. Macを買おう


Mac miniで構わないのでMacを買おう。Windowsでもtoolchainを自分でbuildすればiPhone用のバイナリを作れなくはないが、デバッグが実機でしか出来ない。


Mac用のiPhone SDKは非常に出来が良く、統合環境としても、シミュレータとしても優れている。無理してWindowsで開発しようとしないこと。これが開発の近道である。


2. Cocoaを勉強しよう


詳解 Objective-C 2.0

iPhoneのアプリを開発すると言ってもiPhone専用のAPIはごくわずかであり、実際の開発の大半はObjective-CCocoa,Quartz,OpenGL ESなどの勉強に費やされる。


Cocoa/Objective-Cの本として日本語でお勧めなのは、「詳解 Objective-C 2.0」(左の本) である。内容はかなり凝縮されている。もう少し説明を丁寧にしたほうが良かったように思うが。


また、「たのしいCocoaプログラミング」の改訂版(Leopard対応版)が8月30日発売になった。私は内容をまだ確認していないが、改訂版でないほうの「たのしいCocoaプログラミング」のほうは評判が良かったので、こちらはとっかかりにはいいのではないかと思う。


たのしいCocoaプログラミング[Leopard対応版]
http://www.bnn.co.jp/books/title_index/mac/cocoa_leopard.html


アマゾンでの購入→たのしいCocoaプログラミング[Leopard対応版]


Cocoa Programming for Mac OS X
Aaron Hillegass
Addison-Wesley Professional
売り上げランキング: 267
おすすめ度の平均: 4.5
4 わかりやすい
5 初版から確実に進歩しています

あと、洋書になるがヒレガス先生のCocoa Programming for Mac OS X(第三版)が特にお勧め。Cocoaが誕生するまでの歴史的経緯から詳しく書かれている。


この本は日本語版も出ているが(→Mac OS X Cocoaプログラミング)、第一版の訳本なので内容が古すぎる。第三版を原書で読むのがベスト。


iPhone Open Application Development

Objective-Cの説明、UIKit,イベントハンドリング,CoreImage,CoreSurfaces,CoreAudioの説明がある。iPhoneに特化した内容なので、ヒレガス本で基礎を学んだあとに(iPhoneSDKの資料だけで理解できないときは)読むといいと思う。


まあ、Objective-CからC++のコードを自由に呼び出せるわけで、大きなプログラムの場合、コードの大半はC++で書いて、フロントエンドだけObjective-Cで書くというようなスタイルになると思うのであまり真剣にObjective-Cで書こうとは考えないほうがいいとは思う。


3. その他の情報


iPhone SDKは97%ぐらいは既存の(Cocoaなどの)技術であり、それらはオープンに語ることが出来る。比較的日本語ドキュメントも入手しやすい。(例えば下記のリンク)


残りの3%ほどがiPhone専用のAPIだ。なぜこの程度のものをNDAで縛るのかよくわからないが、オープンには語れないことになっている。


Apple Developer Connection 日本語に翻訳されたドキュメント
http://developer.apple.com/jp/documentation/japanese.html


The comp.lang.objective-C FAQ listing 日本語訳
http://www.libjingu.jp/trans/clocFAQ-j.html



OpenGL ES 2.0 Programming Guide (OpenGL)
Aaftab Munshi Dan Ginsburg Dave Shreiner
Addison-Wesley Professional
売り上げランキング: 787

OpenGL ESはOpenGLのサブセットなのであえて勉強する必要もないと思うけど、かなり売れているみたいなので一応紹介しとく。


この本の内容は、レビューを書いている人がいるので、↓を参考にどうぞ。


OpenGL ES 2.0 Programming Guide( (株)スリーディーCTO加納裕のBLOGです)
http://3dinc.blog45.fc2.com/blog-entry-958.html


OpenGL ESゲーム開発技法」(アマゾン売り切れ)(原書→Opengl-Es Game Development (Game Development Series))のほうが良いのかも知れないが、こちらは内容が古いのが何とも…。


この本は、Mascot CapsuleとかSwerveとかBREWをターゲットとした解説が多いので、BREWの開発もやっている人にはお勧めなのだがiPhoneアプリ開発には不要な話題が多すぎる。そもそも書籍タイトルがおかしい。「モバイル向けゲーム開発 〜BREWの周辺」って感じの本だ。とは言え、他にOpenGL ESに関して適切な本が少ないのも事実なのだが…。


4. iPhoneに特化したサイト構築


Professional iPhone And iPod Touch Programming: Building Applicatins for Mobile Safari (Wrox Professional Guides)は、iPhoneSafariに特化したページを作る上での制限事項(HTML,CSS,JavaScriptのサイズは何KBまでだとか、Safariの画面サイズは縦置きの時、幅356ピクセルで、それぞれのパーツの高さはStatus bar:20 , URL bar:60 , Content:356 , Button bar:44 ピクセルで、横置きの時はどうだとか、キーボードを出した時はどうだとか、かなり詳しい情報が書かれている。この本は期待していなかったのだが、iPhoneに特化したWebを作成する上で役に立つ情報が満載だ。