Help us understand the problem. What is going on with this article?

Rubyist が RubyMotion で iOS アプリの開発を始める方法

More than 5 years have passed since last update.

前書き

この 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 あたりをチェックしておくと良いです。

ignis
累計7000万DL超のスマホアプリを自社企画・開発 ツール系からマンガ、ゲームなど幅広いジャンルのアプリを展開
http://1923.co.jp/service-information
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away