• BPnet
  • ビジネス
  • IT
  • テクノロジー
  • 医療
  • 建設・不動産
  • TRENDY
  • WOMAN
  • ショッピング
  • 転職
  • ナショジオ
  • 日経電子版
  • PR

  • PR

  • PR

  • PR

  • PR

ツールで楽々!Androidアプリ開発

Rhodes[1]Rubyでネイティブモバイルアプリを作成

落合 薫、大谷 辰夫=システム工房エム 2011/09/05 ITpro

 新しいスマートフォンアプリの開発方法として「マルチプラットフォーム対応フレームワーク」という選択が可能になってきた。

 3Dゲーム用エンジンで有名な「Unity3」や、Lua言語を採用した同じくゲーム向けである「Corona」、JavaScriptをネイティブコードに変換する「Titanium Mobile」、そしてまるでWebアプリケーションを作成しているかのように開発ができる「Rhodes」などがある。

 Unity3はiOS/Android用ライブラリはアドオンとして有料で販売されている。Coronaは商用利用の場合はライセンス料がかかる。Titanium MobilとRhodesはどちらともオープンソースソフトウエアとして公開されており、ライセンス形態は違うが商用利用の場合でもロイヤリティフリーで利用することができる。

 また、Androidなどではあまり関係ないが、iOSではAppleの規約によって、スクリプトをダウンロードして実行したり、コードを動的にコンパイルさせて実行するといったアプリは審査に通らない。ここであげたフレームワークはすべてネイティブアプリとしてビルドされるものばかりなので、現在の規約に抵触することはない。

 以上のように、マルチプラットフォーム対応のフレームワークは選択できるものが増えてきている。その中でも我々が注目したのは「Rhodes」だ。

Rhodesについて

 Rhodesは米Rhomobileから2009年3月24日にV 1.0が発表された。2010年6月29日にV2.0がMIT Licenseにライセンスを変更しリリース。2011年5月10日にV3.0が発表と進化し続けている。

 Rhodesの特徴は以下の通りだ。

・マルチプラットフォームに対応したフレームワーク
・ロジックを「Ruby」で記述できる
・ネイティブアプリケーションとして動作する
・ユーザーインタフェース開発はHTML/CSS/Javascriptで作成
・MVCアーキテクチャの採用等、Webアプリケーションフレームワーク「Ruby on Rails」の思想を継承

 詳しく解説しよう。

・マルチプラットフォームに対応

 iOS/Android/Windows Mobile/Black Berryなどのアプリケーションがすべて一つのコード、もしくは非常に少ない修正で作成することができる。

・ロジックを「Ruby」で記述できる

 日本生まれのオブジェクト指向プロジェクト言語Rubyで開発する。Rubyは、純粋なオブジェクト指向言語として設計されており、すべてのデータをオブジェクトとして統一的に取り扱うことができることが特徴だ。

 Rhodesを利用して開発する場合にも、以下のようなRubyならではの特徴がある。

・動的型付けができる
・シンプルで一貫性のとれた記述ができる
・可読性や保守性が高い

 以上の特徴を活かし、高い保守性と生産性を維持して継続的かつ俊敏な開発ができる。

・ネイティブアプリケーションとして動作する

 Rubyスクリプトを直接実行(動的コンパイル)せず、まずRubyスクリプトをRuby1.9ベースの中間バイトコードへ変換し、そのバイトコードをOSごとに用意されたRubyVMで実行させる形式を取っており、Appleの定めるAppStoreの規約に抵触することなくネイティブアプリケーションとして登録・配布が可能になっている。

・ユーザーインタフェースはHTML/CSS/Javascriptで作成

 Rhodesの提供するUIはWebViewを利用するので、HTML/CSS/Javascriptで作成する。

 これらの開発はWebアプリ開発経験者にとって参入しやすい。また、jQueryやjQTouch、Senchaといった様々なJavascriptのライブラリを使用する事ができますので、WEBアプリ開発で培った技術をふんだんに使用する事ができる。

・フレームワーク「Ruby on Rails」の思想を継承

 Rhodesの特徴はフレームワーク「Ruby on Rails」の思想を継承していることだ。Ruby on Railsの特徴であるMVCアーキテクチャの採用をしていることで効率のよい開発が可能になる。

 開発のコマンドが違う程度で開発手順や手法が「Ruby on Rails」とほぼ同じであることから、開発経験者であればコマンドを理解することですぐに開発することができる。

ここから先はITpro会員(無料)の登録が必要です。

次ページ Rhodesで開発したアプリの例
  • 1
  • 2
  • 3

あなたにお薦め

連載新着

連載目次を見る

今のおすすめ記事

  • 【Apple Pay最新事情】

    NFC開放から占うApple Payの未来

     WWDC17におけるApple Payの最大の話題は、新機能「個人間(P2P)送金」の提供だった。一方でiOSエコノミーの開発者らの間では、iOS 11で初めて「NFC(Near Field Communication)」機能の開放が行われて大きな話題になっている。

ITpro SPECIALPR

What’s New!

経営

アプリケーション/DB/ミドルウエア

クラウド

設計/開発

サーバー/ストレージ

ネットワーク/通信サービス

セキュリティ

もっと見る