TOPシステム開発> Ruby on RailsとAdobe AIRを試す
Ruby on RailsとAdobe AIRでデスクトップアプリを作る
Ruby on RailsとAdobe AIRでデスクトップアプリを作る

第1回:付箋紙アプリケーションを作ろう!

著者:ワイズノット  増井 雄一郎   2007/9/5
1   2  3  次のページ
Ruby on RailsとAdobe AIRを試す

   Webの技術を使ってデスクトップアプリケーションを作ることができる開発環境である、「Adobe AIR(旧名 Adobe Apollo)」のパブリックベータ版が6月11日にリリースされました。

   ここ数年、Webアプリケーションの進化がめざましく、表計算やワープロといった今までテスクトップ専用のものだと思われていたアプリケーションまで、Webブラウザ上で扱うことができるようになってきました。

   Adobe AIRは、Webアプリケーションで使われている、HTML、CSS、Ajax、Flashといったテクノロジを使つつ、Webブラウザに依存しない、スタンドアローンなアプリケーションを開発・実行できる新しい環境です。

   本連載では、Adobe AIRとRuby on Rails(以下、RoR)を使って、Webブラウザだけではない、新しいタイプのWebアプリケーションを作る方法を紹介していきます。

Adobe AIRとは

   Adobe AIR(Adobe Integrated Runtime)は、2007年3月にAdobe社が発表した、インターネットの技術を使って、クロスプラットフォームなデスクトップアプリケーションを開発/実行するプラットフォームです。6月にAIRという正式名称が付くまでは、Apolloというコードネームで開発が進められていました。現在は、年内の正式リリースに向け順調に開発が進んでいるようです。

Adobe Labs - Adobe Integrated Runtime(AIR)
http://labs.adobe.com/technologies/air/

   基礎技術として、FlashやFlex、PDF、ActionScript 3といったAdobe社のリッチメディアインターフェースと、HTML、CSS、JavaScript(Ajax)といったオープンスタンダードの技術をサポートしています。これらは多くのWebプログラマーやデザイナーが精通している技術でデスクトップアプリケーションを作れることから、今までになかった新しいものが開発されることが期待されています。

   現在はWindowsとMac OS Xがサポートされており、来年にはLinux版もリリースされる予定です。一度AIRでアプリケーションを書けば、ほとんどすべてのPCで動かすことができるのも、非常に大きなメリットです。

   開発環境は主にJavaで構築されており、Windows/Mac OS X共に無料のSDKと、有料のIDE、Flex Builder 3が公開されています。

   Adobe社の開発環境といえば高価というイメージがありましたが、コンソールアプリケーションのみとはいえ、無料で提供されているものがあるため、コストを発生させることなく、アプリケーションを構築できるのも大きな強みです。今回の記事では無料のSDKを中心に解説していきます。


Ruby on Rails + Adobe AIR

   AIRは、SQLiteというSQLデータベースも内包しており、それ単体でデータベースアプリケーションなどを構築することができます。しかし、その真骨頂はインターネットとの親和性の高さを活かしたネットワーク対応のアプリケーションにあります。

   Adobe AIRは、FlexやFlashで使われている多くの外部連係機能をサポートしています。また、FlashやJavaScript(XMLHttpRequest)からはセキュリティ上の懸念から、同一ドメインや管理者が許可したドメインのデータのみにアクセスできますが、AIRではこの制限がなく、自由にアクセスすることができます。

   ActionScript 3では、多くの通信方法をサポートしており、単純な情報であればFlashVarsというテキスト形式や、簡単にFlex/Flash間のデータのやり取りを行うAMFプロトコルを使ったFlash Remote clientという方法があります。それぞれにメリット・デメリットが存在します。

   RoRでも、AMFをサポートさせるWebORB for Ruby on Railsというプラグインを使えば、サーバ上のメソッドをネットワークを意識しない形でアクセスさせることもできます。


   これらのFlex/Flashで一般的な通信方法以外にも、WebAPIやSOAPといったオープンスタンダードなプロトコルもサポートしています。RoRでもこれらのAPIをサポートしていますので、これを使うことでAIRで作ったクライアントアプリとRoRで作ったサーバアプリケーションの連携が手軽に行えます。

   このような、インターネットを介したデータをやり取りするプロトコルは多数ありますが、近年、マッシュアップなどで使われる場合の多くは、WebAPIというHTTPを介したものになっています。その中でもRESTと呼ばれる形式のWebAPIが手軽に利用できることから、非常に多く使われるようになっています。もちろん、Adobe AIRとRoRの両方がREST形式のWebAPI(別名、RESTful)をサポートします。

   今回は、このREST形式のWebAPIを使って、Adobe AIRとRoRの間で情報のやり取りをしてみましょう。この形式を使う利点は、多くのプラットフォームでサポートされていることから、別のプラットフォームと連携させようとしたときに、手軽に行える点です。

1   2  3  次のページ


株式会社ワイズノット 増井 雄一郎
著者プロフィール
株式会社ワイズノット  増井 雄一郎
PukiWikiなどのオープンソース活動を経て、2005年からRuby on Railsに的を絞り、2006年はRubyに関する仕事のみで生計をたてる。これまでのフリー活動から転身し、アメリカ行きを目指して2007年4月に(株)ワイズノットに入社。クロスメディア事業部でSaaSプラットフォームの構築に従事。現在の興味はテキストマイニング。


INDEX
第1回:付箋紙アプリケーションを作ろう!
Ruby on RailsとAdobe AIRを試す
  Ruby on Rails + Adobe AIRで付箋紙アプリケーション
  付箋紙アプリケーションを試す!