iPad開発を始めたい人へ

周りにiPad開発してみたい!という開発者がいくらかいるのでひとつ。
言語問わずある程度UIを持ったアプリ開発の経験のある開発者向けに。

しかしながらすでにけっこうためになるまとめがあるので主にそちらを参照。

と、丸投げ。
あとは思うところをちょっとだけちょっとだけ。

開発の準備

iPhone Developer Programへの登録が必要。
10800円ケチケチせずに払う。

登録時日本語使わない。
使うと修正のためにオペレーターとのメール経由でのやりとり数週間コースに突入。

IDEはおとなしくXCodeで。補完がないと無理。

SDKをひとつのフレームワークとしてとらえる

フレームワークの提供する枠組みに沿って開発すれば、ちょっとしたユーティリティ系のアプリであれば割とさくっと作れる。
よくスクリプトを組んだ経験のないデザイナーの人などが「簡単に作れちゃいました」と言っているのを聞くのもそのため。

逆にフレームワークの文脈を理解するのを億劫がってオレオレに走ると苦難の道が待っている。
待っていましたとも。車輪の再発明どころじゃねえ。

基本を理解するために必要そうなドキュメントは全部目を通す。
とりあえず以下の「一般」にカテゴライズされている物は必読。

Interface Builderは使う?使わない?

最初はどっちでも。

使う場合。
フレームワークとObjective-Cの学習コストに加えてInterface Builderとの連携の仕方を覚えるのはちょっとしんどい。

使わない場合。
とはいえUIに部品を追加するたびにリファレンスと首っ引きになってたら開発が遅々として進まなくてしんどい。

いずれにしろ最初はしんどいのかと思われる。
最初はサンプルに沿って何かを作ってみると言うところからスタートすると思うので、そのサンプルに追随すればいいのではないかと。

コードによるUIの構築は基本addSubviewでUIViewオブジェクトをレイヤーのノリで重ねて行くだけ。
ナビゲーションバーにボタンを表示するなどの、関連性のあるオブジェクトの設置に関してはその処理をラッピングしてくれるメソッドが準備されている。

なので、コード書くのに慣れたらInterface Builder使わない方がむしろ簡単でよいと思う。

メモリ周りはしっかりと理解を

iOS上では残念ながらガベージコレクションが使えないので、リファレンスカウンタでオブジェクトの解放を管理する。
どのタイミングでリファレンスカウンタが増減するかをきちんと知っておかないと、メモリリークしまくったり、逆にまだ使っているオブジェクトを解放して往生する。

ちなみにObjective-C 2.0にはガベージコレクションの仕組みがある。
iOSで使えなくしているのはハード性能の制約のため。
とはいえiOS自体が徐々に下位機種切り捨ての方向に向かっているので、いずれは使えるようにならないものかと期待してしまう。

その他

過去記事。

前の記事

最近のiPadの使い道

次の記事

RubyKaigi2010の感想