Curlとは


Curlは米国防総省やマサチューセッツ工科大学 (MIT) などの共同プロジェクトから生まれた技術であり、RIAアプリケーションをあらゆるプラットフォームで実行するためのクロスプラットフォーム開発環境および実行環境です。

プロジェクト

Curlアプリケーションを開発・動作させるために、4つのモノが提供されています。

Curl言語とAPI群
マークアップ言語、オブジェクト指向、言語拡張などあらゆる要素を1つに包括した開発言語です。
Curl RTE(Curl Runtime Environment:Curl実行環境)
Curl言語で記述されたソースファイルをPC用にRIAアプリケーションとしてJITコンパイル・実行する実行環境です。
CDE (Curl Development Tools for Eclipse)
Curl言語を使用した RIAおよびモバイルアプリケーションの開発を支援するEclipseのツール プラグインです。CDEは Curl言語に対応したプロジェクト、エディタ、ウィザード、デバッグサポートなど数多くの機能を提供します。
Caede(Curl Application Export Development Environment)
Curl言語で記述されたソースファイルをモバイル用のモジュール(ハイブリッドアプリケーションモジュール)に変換するフレームワークおよび開発ツールです。

Caedeアプリケーションが動作する仕組み

モバイル用のハイブリットアプリケーションとして動作させる場合はCaedeのTranslatorを使用して「HTML5群」に変換してモバイル用アプリケーションを生成し、ハイブリッドアプリケーションとして動作します。ハイブリッドアプリケーションとはネイティブコンテナ(WebViewコンポーネントなどの)のなかで、コンテンツをHTML5で構成し、動作するアプリケーションのことをいいます。HTML5のウェブページやウェブアプリはそれだけでは iTunes App Store や Google Android Market に公開することは出来ませんが、ネイティブのコンテナを用いることでアプリとしてパッケージし、それを可能にしています。また、ネイティブのコンテナを使うことで、ブラウザ+HTMLからはアクセスすることができない、カメラ、マイク、コンタクトリスト、GPS、プッシュメッセージなどのデバイスのネイティブ機能が利用できるようになっています。

プロジェクト

またRIAアプリケーションとして動作させる場合はCurl RTEをエンジン・コンパイラとして使用します。CurlRTEはCurl言語で記述されたファイルをPC用のRIAアプリケーションとしてWebブラウザで動作させるためのプラグイン・ソフトです。一般のプラグイン・ソフトと同様に、CurlのWebサイト からダウンロードして、クライアントPCにインストールします。Curl RTEをインストールすれば、後はパソコンがあればCurlは基本的に動作します。詳しくは「Caede入門(RIA編)」を参照してください。

RIA用およびモバイル用どちらにしてもCurl言語およびCDEを使用して開発していきますので、開発に関してそれほど大きな違いはありません。ただし、Caede SDKのフレームワークを使用するという前提があります。