Make beautiful apps with beautiful code: use the elegant and concise Ruby programming language with RubyMotion to write truly native iOS apps with less code while having more fun. You'll learn the essentials of creating great apps, and by the end of this book, you'll have built a fully functional API-driven app. Whether you're a newcomer looking for an alternative to Objective-C or a hardened Rails veteran, RubyMotion allows you to create gorgeous apps with no compromise in performance or developer happiness.
Developers interested in native iOS app development have been restricted to the limits of Objective-C and Xcode--until RubyMotion came along. RubyMotion enables you do full iOS development using Ruby. You have access to familiar tools such as Rake and RubyGems and can compile Ruby code into native applications. RubyMotion even comes with a Ruby console useful for live coding and interactive debugging. And since RubyMotion is built on top of the Objective-C runtime, you can use all of Apple's libraries and most third-party code alongside Ruby classes.
This book takes you from zero knowledge of iOS development to building an app that displays information about colors using a web service API. You'll work through each topic with a small example app that covers just enough to get you familiar with the techniques you need to get real work done.
You'll start with just drawing boxes on the screen, but you'll quickly add animations, a navigation stack, and high-performance table views. You'll peek into less visible components, such as using Ruby metaprogramming to create JSON-based models. You'll use some incredibly useful common Ruby techniques that are only possible in RubyMotion, such as writing automated unit tests with an RSpec-like framework.
Using both Apple's existing libraries and fresh, community-driven RubyMotion projects, you'll be well on your way to writing real-world apps.
What You Need:
A Macintosh running OS X 10.7 or later is required to install RubyMotion. RubyMotion is a commercial product and currently requires a purchased license. Experience with the Ruby language and Ruby tools like RubyGems and Rake are suggested.