開発用ライブラリ
Curlではアプリケーションの要件に応じて柔軟に開発を進めるために様々な拡張APIをオープンソースで提供しています。開発者はオープンソースを利用することでより便利でインタラクティブなアプリケーションの開発を行うことができます。
Curlが提供するオープンソースには以下のものが挙げられます。
Curlの開発用ライブラリのダウンロードはこちら 開発者用ライブラリ ダウンロード
詳細については、技術情報サイト「Curlデベロッパーセンター 」をご覧ください。
【業務向けUXライブラリー(Curl External Library)】
Curl External Libraryは、業務向けUXライブラリで使用できる機能をふんだんに盛り込んだアプリケーションです。
- Transitionframe(トランジションフレーム)
- Geographic(ジオグラフィック)
- Treegrid(ツリーグリッド)
- Worksheet(ワークシート)
- Gantt Chart(ガントチャート)
- Recordgrid 計算Recordgrid(計算レコードグリッド)
- Splashscreen(スプラッシュスクリーン)
- Autocomplete Autocomplete(オートコンプリート)
- Balloon(バルーン)
Curl External Library 製品ページはこちら
【MVCフレームワーク(Curl Sonntag)】
Curl Sonntagは、Curlアプリケーション開発のためのクライアント・サイドのMVCフレームワークです。
アプリケーションの枠組み(MVC)を提供し、UIとロジックを完全に切り離すことにより、高品質な
Webアプリケーションの開発を実現します。
また、画面遷移、画面間メッセージ通信のユーティリティを
利用することで、開発生産性を向上します。
- Graphic:画面レイアウトのデザイン
- Screen:画面とロジックを分離
- Command:ビジネスロジックを構築
Webサービス開発キット(WSDK)
WSDK (Web service Development Kit) は、Curl アプレットから「 Web サービス」を簡単に利用するためのパッケージを含む開発者用キットです。
このWSDKを組み込んだアプリケーションを構築すると、Webサービスを利用したい時に、提供元が配信するWSDLを読み込み、瞬時にCurlのソースコードを自動生成します。
WSDKを利用することで、CurlはSOAP/WSDLやXMLドキュメントモデルなどのWebサービスを用いたエンタープライズレベルのアプリケーション構築に必要なコンポーネントを提供します。
具体的には、以下の機能が挙げられます。
【WSDLからCurlプログラムを自動生成】
- Webサービスを定義するWSDLファイルを元に、そのWebサービスと通信を行うためのCurlクラスを自動的に生成する
- 通信用(同期/非同期の両方)と、データクラスなどを生成
- XmethodsやPocketSOAPのWSDLに対応
【XMLドキュメントモデルパッケージ】
- XMLをドキュメントモデルとして容易にハンドリングが可能
- XMLSchemaをサポートし、RSS(1.0,2.0)などXMLの拡張フォーマットに対応
- Xpathに対応し、モデル内の捜査、変更が容易
- Curlコントロールへのバインディング機能を実装
- Curlオブジェクト(RecordSetなど)への変換が可能
SQLite連携キット(CDK)
CDKライブラリは、クライアントにSQLiteの環境を用意することでSQLデータベースとの接続を利用可能にし、大量データを扱うアプリケーションの開発をサポートします。また、SQLiteエンジンを利用したデータ抽出、書き込みが可能になったことで、CDKライブラリはCurlによるオフラインアプリケーション(OCC : occasionally connected computing)の構築において重要な基盤になります。
CDKとCurl の データアクセス機能との統合により通常のCurl 開発テクニックを用いてデータ表示や操作を扱えるなど、SQLite データベースとの理想的な統合を実現しています。
AMFプロトコル連携キット(CDK-DS)
CDK-DSは、既存のサーバインフラで、信頼性の高いデータ通信が求められている企業向けシステムを構築する開発者にとって有用な機能を提供するライブラリです。CDK-DSの提供によりCurlは、RIAクライアントとサーバ間のデータをバイナリ通信で行うAdobe社の AMF(Action Message Format)プロトコルが利用できます。
一般的に、大量なデータを取り扱うエンタープライズ向けRIAにおいてデータの転送速度がパフォーマンスのボトルネックになります。AMFのようなコンパクトなデータフォーマットの利用は、解決へのとても重要な鍵です。Curlの開発者が企業向けRIAを開発する際の新たなソリューションとしてCDK-DSを利用することで、この問題を解決します。
CDK-DSは、オープンソースのBlazeDSサーバがサポートするpublish/subscribe、サーバプッシュ, リモートプロシージャコール (RPC)、セキュリティ、認証機能など、全てのリモーティングやWebメッセージングサービスに対応しています。さらに、サーバとの全ての通信を非同期で行うことで、サーバからの応答を待っている間でも通常と変わらないオペレーションができるなど、高いユーザビリティを実現する重要な要素になります。
テスト用ユニット(CDU)
CDUは、ユニットテストやプロジェクト開発を含むアプリケーション開発の支援する機能を提供します。CDUは、基礎となるコンポーネントがWSDKやCDKプロジェクトの両方に使われていることから、CDUはこれらの既存のプロジェクトが使用している技術を統合し、開発環境におけるグッドプラクティスな基盤の構築を実現することができます。
Java連携ツール(Curl ORB for Java)
「Curl ORB for Java」は、リッチクライアントCurlからPOJO(Plain Old Java Object)で作成されたJavaオブジェクトのメソッドをコールし、戻り値をCurlアプリケーションで受け取るためのツールです。
Curl ORBを使用することにより、開発者はサーバサイドのJavaクラスからCurlのソースコードを自動生成することができ、CurlとサーバサイドJavaとの連携をより容易に開発することが可能となります。Curl ORBは、バイナリフォーマットを使った通信においてより高速なハイパフォーマンスをRIAシステムで実現します。
- サーバサイドオブジェクトのメソッド実行
- Curlアプリケーションからサーバサイド上にあるクラスのインスタンスを生成及びメソッドを実行し、戻り値をCurlが取得することができます。
- ハイパフォーマンス
- Curl ORBは、バイナリフォーマットを使った通信で、テキストベースのXMLやJSONより高速かつネットワークトラフィックを低減させることができます。
- 複数データ型のサポート
- CurlとJavaとの間でプリミティブ型以外にも複数のデータ型をサポートしています。
(例)String、Date、ユーザ定義クラス、配列、List、Map、Exceptionなど - DIコンテナ統合
- Curl ORBはDIコンテナで管理されたJavaオブジェクトをコールすることもできます。例としては、Spring framework、Seasar2をサポートしています。
- ソースコード・ジェネレータ
- 開発者はCurlのソースコードをJavaクラスから自動生成することができます。
UIデザインコンポーネント(Advanced UI)
Advanced UIは、標準のGUIコンポーネントだけでは実装が困難であった、よりリッチなUIとデザインをアプリケーション上で実現します。また、Curlを開発する開発者は、アプリケーションの開発におけるUIデザインの効率化とリッチなユーザビリティが提供できるコンポーネントが利用できるようになります。
提供するUIデザインコンポーネントは、以下の主要コンポーネントを含めた30種類になります。
- カルーセルメニュー : 立体的に回転するメニュー
- フィッシュアイ : Macのdockライクなメニュー
- Cubeフレーム : 3Dの立方体型のフレーム
- マウスジェスチャー
- イベント
- オートコンプリート
- ウィザードフレーム
- アニメーション・ビュー
- アニメーション・ボタン
- ローテーター
- カスタマイズされたテキストフィールド・日付フィールド・コンボボックス・ボタン・アコーディオンタブ など
【拡張ライブラリ】
拡張ライブラリは、Curlの標準APIの拡張ライブラリであり、ユーティリティ機能をはじめとして、コレクション操作、ロギング、キャッシング、入出力、日本独自APIなどの機能を提供します。
主要コンポーネントは以下の通りです。
- Curl基本データ型ユーティリティとコレクション・クラス
- UIユーティリティ
- データ・キャッシング
- メッセージ管理
- Curl環境ユーティリティ
- 暗号化・複合化ユーティリティ
- 日本独自ユーティリティ
- ファイル検索・保存・復元
- ログ出力とログ・ローテーション など