前書き
この RubyMotion Advent Calendar 2013 をチェックしている方の中には、サンタさんに RubyMotion のライセンスを頼んでいる方も多いと思います。
12/25 に、枕元に突然 RubyMotion のライセンスが届いていても慌てないように、どういう順序でどんなドキュメントにあたっていけばスムーズに iOS アプリ開発を学べるのか、を自分の経験からまとめてみます。
(実際、RubyMotion もくもく会などでも良く聞かれる質問です。)
前提
- Objective-C での iOS アプリ開発経験は問いません。
- Ruby が好きであることが大事かも?
公式ドキュメント
まずは公式の Welcome to RubyMotion を読みましょう。
そして、本文に従って、アラートを出すだけのアプリを書きます。
次に一通り斜め読みで結構ですので RubyMotion Runtime Guide に目を通してください。これを読んでおくだけで防げる悲劇があります。
例えば「kCLLocationAccuracyBest
がどう考えても typo じゃないのに使えない」-> 「RubyMotion では KCLLocationAccuracyBest
(大文字の K で始まる) にしなきゃダメだと!?」というのは幾度も繰り返されてきた悲劇です。
チュートリアル
まずはみんなが通る道、RubyMotion Tutorial をやりましょう。
少なくとも 7章の Models のところまではやってください。
バリバリに Cocoa Touch フレームワークを使って書くので、事前知識が無いと結構不安になりますが、まずは一通りやってみることが大切です。
書きながら、ちょくちょく Cocoa Touch フレームワークのドキュメントを見てみるのもいいと思います。
Xcode の Help メニュー -> Documentation & API Reference で見てもいいですが、Dash というアプリが使いやすいのでおすすめです。
もしチュートリアル的なものがもう少し欲しい場合は、僕が Mobile Touch で連載させていただいている 実践!RubyMotion も参考にして下さい。
Cocoa Touch をもうちょっと学ぶ
ここまででとりあえず RubyMotion の感覚は掴めたと思います。ただし、Cocoa Touch フレームワークについての知識が曖昧だと、結局何やってるんだかわからないもやもや状態が続きがちです。
Apple 公式の PDF の 和訳 があるのですが、以下の 2 ファイルを斜め読みすると、大体 Cocoa Touch フレームワークの勘所が分かるようになります。
- iOS View Controller プログラミングガイド
- iOS View プログラミングガイド
Ruby on Rails とかの経験があれば View と Controller がわかれば、Model の考え方とか役割は普通の Ruby のプログラムとさほど変わりませんしね。
このあたりからは、もう自分で作りたいものを作り始めるのが良いでしょう。
まだ作りたいもののアイディアが降りてこなかったりする場合は、RubyMotionSamples を動かしたり、改造したりして RubyMotion が (というよりは iOS アプリが) できることを色々試してみましょう。
より深く学ぶ際におすすめの書籍
もうここからは RubyMotion では という前置きがいらなくなります。Objective-C でアプリを書くときと共通のものがおすすめになります。
コミュニティ
あとはもう自分で作りたいものをどんどん作るのみです。
孤独を感じたらぜひお近くの RubyMotion コミュニティへ足を運ぶか、作るかしてください。
イベント情報は RubyMotion JP や connpass 上の RubyMotionJP ページ、@ainame さんの主催されている RubyMotionTokyo あたりをチェックしておくと良いです。