TOPシステム開発> はじめに
いまが旬!Ruby on Rails&OpenLaszlo
いまが旬!Ruby on Rails&OpenLaszlo

第1回:Ruby on RailsとOpenLaszloの連携

著者:ネットエイト  十河 学   2007/9/4
1   2  3  次のページ
はじめに

   Ruby On Rails(以下、RoR)を使ったWebアプリケーションが増えてきました。RoRの優れたフレームワークを利用することで、高速かつ快適にWebアプリケーションが開発できることは開発者にとっても楽しいことです。

   この連載では3回に分けてオープンソースのRIA(リッチインターネットアプリケーション)フレームワークである「OpenLaszlo」を利用し、よりリッチなWebアプリケーションを簡単にRoRアプリケーションに統合する方法を説明していきたいと思います。

   RoRについては、下記の連載をご覧ください。


リッチインターネットアプリケーションの時代

   Web 2.0という言葉がよくいわれるようになって以来、話題となるWebアプリケーションは動的なインタラクティブ性や豊かな表現を備えたRIAが主流となってきました。セットアップやインストールの必要がなく、主にクライアントのWebブラウザ上でデスクトップアプリケーションと同等の表現力や操作性を持つRIAは、Webの世界はもちろん社内システムなどにもますます浸透してきています。

   クリックするたびにWebページをサーバ側で生成してWebブラウザに表示する静的なHTMLアプリケーションと比べ、RIAではインタラクティブ性が優れていることはもちろん最小限のデータのみをサーバと送受信するためサーバー負荷を大幅に軽減させることができるというメリットもあります。

   さらにAdobeやMicrosoft、Sun、Google、Yahooなど大手のソフトウェア会社が、それぞれ特徴のあるRIAのためのフレームワークを発表していることから、これからますますRIAが注目され浸透していくでしょう。


OpenLaszloとは?

   OpenLaszloとはオープンソース(CPL)で公開されているRIA開発のためのフレームワークです。OpenLaszloアプリケーションはクライアントのWebブラウザ上で動作するRIAで、現在Flash Playerを利用したSWFアプリケーションと、JavaScriptを利用したAjax(DHTML)アプリケーションの両方を1つのコードから出力させることができます。

   OpenLaszloの特徴の1つとして、クライアントの実行環境に依存しないように設計していることがあげられます。現在はFlash、Dhtmlに対応していますが、Java MEへの対応も発表されており、これからますますより幅広いクライアント環境上で動作させることができるでしょう。

   OpenLaszloはこのようなマルチランタイム対応となっている唯一のオープンソースのRIAフレームワークです。OpenLaszloを使うことで、より幅広いクライアント環境でアプリケーションを動作させることができるようになります。

OpenLaszlo日本語サイト
http://www.openlaszlo.jp/

   OpenLaszloアプリケーションはXMLとJavaScriptを組み合わせてソースコードを記述します。XMLやJavaScriptと標準的な文法で記述するため、Web開発者であればすぐにOpenLaszloの記述方法になじむことができるはずです。

   OpenLaszloアプリケーションのための言語を「LZX言語」と呼び、拡張子に.lzxを使用します。次に簡単なLZXアプリケーションのソースコードを示します。

ソース1:hellolaszlo.lzx
<canvas>
  <window width="200" height="150" resizable="true">
    <text x="30">Hello OpenLaszlo!</text>
    <button x="30" y="30" onclick="parent.animate('x', parent.x + 50, 300)">クリック!</button>
  </window>
</canvas>

   このソースから出力されるアプリケーション(図1)はタグによる文字の表示、タグによるドラッグ&ドロップによる移動と、リサイズ可能なウィンドウ、ボタンクリックによるウィンドウのアニメーションが含まれています。

ソースから出力されるアプリケーション
図1:ソースから出力されるアプリケーション

   ここでは<window>というタグを利用しウィンドウを使っていますが、ほかにもツリーやグリッド、タブスライダーなどの様々なコンポーネントが標準で用意されています。また既存のコンポーネントを拡張して新しい機能を追加したり、外観を変更することも可能です。もちろんまったく新しいコンポーネントを作成することもできます。一度作成したコンポーネントは<mycomponent>というコンポーネント名をタグで記述するだけで、どこでも再利用することができるようになります。

   OpenLaszloではこのようにコンポーネントベースでユーザインターフェースを記述していきますので、効率的にアプリケーション開発を進めていくことができるでしょう。

1   2  3  次のページ


株式会社ネットエイト 十河 学
著者プロフィール
株式会社ネットエイト  十河 学
2005年にOpenLaszloに出会う。RIAとオープンソースの可能性に感動し、OpenLaszloの情報交換を目的としたlaszlo.jpを勢いで開設。オープンソースアプリケーションはもちろん、iTunesやYouTubeから生まれるアーティストや、場所を問わないワークスタイルなどインターネットを中心として大きく変わりつつある世界の動きにも興味あり。現在はnet8のメンバーで沖縄県在住。

http://laszlo.jp


INDEX
第1回:Ruby on RailsとOpenLaszloの連携
はじめに
  OpenLaszloとRoRの連携の方法
  OpenLaszloでのデータ利用(続き)