OpenLaszloって何?

OpenLaszlo は おーぷんらずろ と読みます。
XMLを書いてFlashアプリやDHTMLアプリを作る無料ソフトです。

この内容を表示するためには Adobe Flash Plugin が必要です。

↑のソースはここ

もう少し正確に言うと、OpenLaszloはブラウザで動くRIAアプリ(リッチインターネットアプリケーション)を作るオープンソースソフトウェア(OSS)です。RIAアプリを動かすプラットフォームとして、FlashやDHTMLが採用されています。

OpenLaszloで作ったプログラムは、実行環境としてFlashやDHTMLのどちらかを選択できます。FlashPlayerプラグインの入ったブラウザ、あるいは単にDHTML(Ajax)が動くブラウザがあれば良く、どちらにしても他に特別なプラグインを必要としないので、たいていのブラウザやデバイスで動作します。

↓こういうのが作れます。クリックすると反応して動きますので、適当に触ってみてください。

この内容を表示するためには Adobe Flash Plugin が必要です。

↑のソースはここ

OpenLaszlo利用サイトのご紹介

→リンク掲載方法について

プチ事例 by ason

OpenLaszlo入門

必要スキル

HTMLをやったことがある
(その流れでXMLもだいたい雰囲気的にわかる)
Javascriptもかじったことがある
(理屈わからずともサンプルのコピペで動かしてみたことがある、という人でもOK)

HTMLタグでWeb画面を構築し、例えばボタンをクリックした時の動作は何らかのスクリプトを書く必要がある、ということが理解できているなら最低条件クリアです。
実際それは私なのですが(^^;)。

ライセンス

CPL(Common Public License)というオープンソースライセンスです。
無料でダウンロードして利用できます。

CPLってどんなライセンスかというと・・・確かGPLより制限がゆるかったような・・・
忘れました(- -)。興味があったら調べてみてください。

成り立ち

OpenLaszloはもともと米国LaszloSystems社が開発した製品で、広く普及させるために2004年10月にオープンソース化され、コミュニティで開発が続行されるようになりました。

言語体系

OpenLaszloではXMLとJavascriptの組み合わせからなる、オブジェクト指向のLZX言語と呼ばれる独自のプログラミング言語で開発します。

本格的なプログラマでなくても、 HTMLやJavascriptでWebサイト/Webアプリを作った経験のある方にはとてもとっつきやすいものになっています。

動作環境

開発環境

OS(Windows/Linux/Mac) + JDK + Tomcat + OpenLaszlo

OpenLaszloはJavaサーブレットなので、Tomcatなどのサーブレットエンジン上で動きます。Tomcatを動作させるためにJDKも必要となるので、OpenLaszloの開発環境に必要なのはJDKとTomcatとなります。OSはWindows、UNIX/Linux、Macが使えます。

BOMなしUTF-8対応テキストエディタ

プログラムを書くのは、BOMなしUTF-8で保存できるテキストエディタがあればOK。LZXタグ補完などコーディング支援機能のあるフリーのエディタもあります。作成するソースファイルは拡張子がlzxのテキストファイルです。

コンパイルはブラウザからlzxファイルにアクセスするだけです。内部で自動的にコンパイルされ、ブラウザ上に表示されます。HTMLを書いてはブラウザで確認する、というのと同じ作業です。

実行モード

SOLOモード or プロキシモード

開発ではなく、アプリを利用する時の話です。

  • 実行モードには、実行時において、OpenLaszloを必要とするプロキシモードOpenLaszloを必要としないSOLOモード の2種類あります。
プロキシ
モード
OpenLaszloサーバで実行(サーブレット、JSPを動かすときと似ています)。
OpenLaszloが持つ全機能を利用できます。
SOLO
モード
単なるFlashファイルあるいはJavascriptファイルとして実行。
swfファイル、jsファイルなので、OpenLaszloサーバは不要。
プロキシモードに比べ、利用できる機能に一部制限があります。

Flashコンパイル or DHTMLコンパイル

アプリの形式として、FlashかDHTMLかを選べます。

Flash
コンパイル
Flashプレイヤープラグインの入ったブラウザ があれば実行できます。
DHTML
コンパイル
Flashプレイヤープラグインは不要、つまりFlashに非対応のデバイスでも実行することができます。

ややこしいですが、Flash/DHTMLそれぞれにSOLOモード/プロキシモードがあります。

安いレンタルサーバなどサーバにJDKとTOMCATがない場合OpenLaszloは動作できないので、SOLOモードを選ぶしかありません。SOLOモードの場合、実行するにはApacheなどのWebサーバがあればOKです。

OpenLaszloの担当分野とバックエンド言語

担当分野

OpenLaszloの担当はWebアプリのユーザインターフェース部分になります。ようはWebの画面で、普通にWebサイトを作るときのHTMLが担当している部分です。

バックエンド言語

DBとデータやりとりしたり、他のWebサービスと連携したりするには、バックエンドのプログラムが必要になります。

  • OpenLaszloがバックエンドに要求する仕様は、おおまかには2つ:
HTTPのGET/POSTが「name=value」の形式で受け取れること
戻りデータはXML形式で返すこと

これは、いわゆるRESTですかね?

これさえ満たしていれば、バックエンドの言語は選びません。C、Perl、PHP、Java、Ruby、ASPその 他なんでもOKです。

他からデータをもらうだけなら、例えばRSSのようにXML形式であればOK。

バックエンド言語側はとにかくXML形式でデータを返すようにするだけでよく、HTMLのコーディングとかビューに関する部分を全く意識しないでいいので、開発効率がすごくあがると思います。ビューを構築するために、HTMLタグをガリガリPHPのコードに埋め込む作業はいりません。

LZXはオブジェクト指向言語

LZXはそれなりに本格的なオブジェクト指向言語です。クラス、継承、オーバーライドなどの概念があります。

わかりやすくいうと、あるタグの機能を継承した独自のタグを作ることができます。つまり、標準コンポーネントとは違った独自のコンポーネントを作れます。

繰り返し似たような画面を作成するような場合、クラスでひとまとめにしていくとコーディングが楽になり便利です。

コーディングの紹介と実行サンプル

Hello World

言語習得の第一歩。OpenLaszloでの Hello World です。

<canvas>
  <text>Hello World</text>
</canvas>

実行例は下の通り。右クリックするとFlashアプリであることが確認できます。(OpenLaszloであることも)

この内容を表示するためには Adobe Flash Plugin が必要です。

OpenLaszlo連載記事

doku.php.txt · 最終更新: 2013/01/09 07:27 by ason
Copyright © 2008~ずっと ason

みかけったー 超人気!あなたのツイッターの最近のツイートからみかけの年齢と性別を診断。
バンドメンバー募集サイト MEMBONIA シンプルで高機能なバンドメンバー募集サイト。
CMS総合デモサイト 有名オープンソースCMS、EC、SNS、Wikiを一度に全部体験できる総合デモサイト