![]() |
次世代クライアントの可能性を探る(前編)
すべては開発者の自由度を高めるために、Curl
宮下知起
2005/4/9
- - PR -
Curl(カール)はリッチクライアント技術の中でも古い歴史をもっている。Curlは、MIT(マサチューセッツ工科大学)のお膝元であるマサチューセッツ州にある新興企業Curl Corporationによって開発された。Webの生みの親として知られるティム・バーナーズリーやMITの優秀な人材も多く参画しており、非常にアカデミック色が強いテクノロジだ。
誕生当初、リッチクライアント技術というより新しいインターネット言語としての認知度が高く、スキルフルなプログラマの興味の対象となっていたCurlは、昨年日本の住商情報システムの関連会社として体制を整え、本格的にビジネス市場に乗り出した。大手システムインテグレータ傘下となることにより、MIT仕込みのテクノロジと企業システム構築のプラクティスとを融合させ、本格的なリッチクライアントベンダとしての新たなスタートを切ったといえる。
■Curlのコンセプトはあらゆるコンテンツを束ねること
![]() |
| 米Curl, Inc. バイスプレジデント チーフアーキテクト ロバート・ホルステッド氏。HTMLに近い記述形式でテキストコンテンツからリッチなユーザーインターフェイス、高度ロジックまでを表現するのがCurlの目標だったと語る |
データエントリを効率化するため専用クライアント、あるいは、リッチなユーザーインターフェイスを実現するためのプレゼンテーション層技術という色彩が強いリッチクライアント技術がある中で、Curlは完成された言語体系を持つ点が特長的だ。すなわちC/C++やJavaなどの言語と同様に高い自由度をもつ。この特長に加えて、Curlを理解する上で知らなければならないポイントは「Curlのコンセプトは、あらゆるコンテンツを束ねて扱えること」(米Curl, Inc. バイスプレジデント チーフアーキテクト ロバート・ホルステッド氏)だという。
Curlでは、HTMLやスタイルシートで定義される静的コンテンツ、ユーザーインターフェイス、プロシージャの3点は、すべてが1つのコンテンツ・タイプとして扱われる。Curl言語によるシンプルな表記で、テキストコンテンツや3Dグラフィックス、ビジネスロジックをも提供するわけだ。この特長はCurlで書かれたコンテンツの1例を見れば明瞭だ。
以下は、a+1の平方根を求めてその解を表示するプログラムの1例である。Curlでは、テキストを表示する場合、表示したいテキストコンテンツをそのまま記述すればよい。そして、プロシージャの部分を「{}(curly brackets)」で囲む(「Curl」の名称はここに由来する)。以下のリストは実行結果である。
The square root
of a+1 is 2. |
上記の結果を実現するコードは以下のとおりだ。「sqrt a+1」が、a(=3)+1の平方根を求める式である。「italic」は「a+1」をイタリック体で表示するためのスタイル定義である。
{let a:int = 3} |
このように、1つのソースにさまざまなコンテンツを束ねられるのが他の高級言語にはない特長である。JSP(JavaServer Pages)のソースコードもテキストとロジックが混在するが、Curlはあらゆるコンテンツをタイプの違いとして捉えて、よりシンプルなコード表記が可能になっている。
ところで、静的コンテンツとプロシージャが混在することによるコードのメンテナンス性の低下が心配されるが、それ以上に「開発者の自由度が高まる」(デイビット・クランズ氏)のがメリットであるという。さらに、JavaやC/C++などの高級言語以上に高機能なAPIが用意されているためコードは非常に短くシンプルなものになるという。
■Curlアプリケーションは非常に高速
![]() |
| Curlの高速性を説明する、米Curl, Inc. バイスプレジデント エンジニアリング 最高技術責任者 デイビット・クランズ氏 |
Curlのもう1つの特長は、動作が非常に高速であり、かつダウンロードサイズが小さいことだ。CurlはWebブラウザ用のプラグインが提供されることで、Webブラウザ内でアプリケーションが動作する。インターネットからダウンロードされたコードはリアルタイムにコンパイルされて実行されるため、ダウンロードサイズは重要なポイントだ。米国ではJavaアプレットで500KBもあるプログラムが100KB以下に収まったというケースが多くあるという。サイズが小さく、かつ高速に動作する理由はランタイムエンジンそのものの高速性とアーキテクチャにある。
Curlコードはインターネットからダウンロードされる際、pCurl(preprocessed Curl)と呼ばれるコードに圧縮される。これでサイズは1/7〜1/10程度に小さくなる。ダウンロードされたpCurlは、圧縮を解凍することなく、そのままJITコンパイラによって解釈される。実は、Curlのコードは内部的にはC言語として処理されている。ランタイム側ですでに多くのコードがプリコンパイルを用意しているため、コンパイルは非常に高速に行われる。そして、実行速度はC言語で開発したクライアントアプリケーションとほぼ同等の速度を得られる。
■Curlリッチクライアントはオールマイティなメリットを提供する
Curlは3Dなどのグラフィカルなインターフェイスに強く、日本国内で需要の高いデータ入力クライアントの実現にはミスマッチな点があるのではという認識が一部にある。しかし、米国ではデータ入力クライアントのニーズを十分に満たしているという。「リッチクライアントへのニーズの内容は米国も日本も大差ない」(米Curl,Inc. バイスプレジデント プロフェッショナルサービス スティーブン・アダムス氏)。
![]() |
| 米Curl,Inc. バイスプレジデント プロフェッショナルサービス スティーブン・アダムス氏。エンタープライズに精通し、多方面にわたるソリューション展開のプランをもつ |
Curlの現仕様で、データ入力系の需要に応えられる。そのため、データ入力系や帳票系の強化のために、他のベンダと協業したり、データ入力系専用のアドオンを作る予定も製品ロードマップ上にないという。「実際、データ入力系に強いと言われるリッチクライアント製品とコンペになるケースが多いが、最近ではCurlが選ばれるケースが増えている」(株式会社カール 営業推進グループ アシスタントマネージャー 栗林亘氏)
一方、Curlはクライアント側での高速な処理性能と、データを表現するために用意された豊富なAPIを生かし、サーバサイドでデータを処理するのではなく、クライアント側で大量のデータを分析、表示できる。そのため、CurlをOLAPキューブの分析システムに用いたいというニーズも高まっているという。スティーブン・アダムス氏はMITではなく通信キャリアや企業のエンタープライズシステムのコンサルティングを長年経験してきたエンジニアだ。独シーメンス社内の経営分析システムを設計した経験をもち、そのノウハウを継承したOLAPキューブ分析システムのフレームワークを開発した。このフレームワークはまだ製品として表に出ていないが、今後のユーザーのニーズを図りながら今後の製品戦略に反映することも考えているという。
Curlの最近の国内事例を見ると、東京三菱銀行の「資産分析ツール」や奈良文化財研究所の「資料館案内システム」など、コンシューマに向けたサービスも登場している。従来の、クライアントに課金されるライセンス体系がサーバライセンスに変更されたため、コンシューマに向けたサービスに採用しやすくなったといえよう。また、東京三菱銀行の例では、他のリッチクライアント技術も比較検討されたが、顧客が資産のシミュレーションを自在に行える仕組みを作り込みやすい点が評価されたという。さらに、プラグインを顧客が導入する必要がある点については、高い付加価値を提供するためなので受け入れられやすく、東京三菱銀行の例でも問題無く運用されているという。
クライアント側でのビジネスデータの分析と、その多様な表現を実現するCurlクライアントは、Webサービスクライアントとしても大きな可能性をもつという。後編では、WebサービスクライアントとしてのCurlの可能性と、近未来のWebコンピューティングのあり方について触れる。
関連リンク
- MIT誕生のリッチクライアント技術が日本に、Curl(Web Client & Report)
- 安藤幸央のランダウン(6):次世代のインターネット言語Curl登場!(Java Solution)
リッチクライアントベンダ・インタビュー バックナンバー
- 第1回 変ぼうを始めたリッチクライアント・マーケット
- 第2回 PDFが業務アプリケーションのプロセスになる日
- 第3回 すべては開発者の自由度を高めるために、Curl
- 第4回 WebサービスクライアントとしてのCurl
- 第5回 オープンソースがRIA市場の起爆剤となる、ラズロCEO
- 第6回 アプリケーションの“枠”を超えるコンポーネントモデル
- 第7回 Ajaxをコーディングレスで作成するAjaxBuilder
- 第8回 プラグインレスの大規模開発向けリッチクライアント
- 第9回 JavaでありながらVBライクな開発、Ajaxアプリ生成
- 第10回 「Adobeとしては、AIRでWebブラウザは作らない」
- 第11回 国産ソフトウェアの可能性と日本の若者への期待
- 第12回 Ajaxライブラリdojo.Eと、技術者を重視するNexaweb
- 第13回 RIAやクラウドが“テスト”に与える衝撃とは
- 第14回 15秒に1人がダウンロードしたQtを利用するメリットは
- 第15回 韓国のUX専門企業「TOBESOFT」とは?
TechTargetジャパン
- どうする、オープンデータ。 (2013/5/20)
日本は世界の1/4のセンサーを利用する「センサー大国」だ。だが、至るところに潜むセンサーを戦略的に使えていない - アドビの本気度が詰まったAdobe Maxまとめ (2013/5/17)
アドビはAdobe MAX 2013でクリエイティブ/開発アプリケーションをまとめてCreative Cloudのサブスクリプション制に移行した - 「初音ミク」や「ゆるキャラ」の商標権ってどうなの? (2013/5/16)
ネットサービスやキャラクタービジネスをする人にとって重要な「商標」のポイントを説明する。怖い落とし穴、海外での勝手出願問題も知っておこう - 想定するユーザーを「ペルソナ」としてモデリングする (2013/5/15)
ユーザーを「ペルソナ」として、1人の人物のように定義しよう。さらに、ゴールを設定し、どのように行動するかを物語形式のシナリオを作ろう
|
|
キャリアアップ
イベントカレンダー
転職/派遣情報を探す
**先週の人気講座ランキング**
〜 Android編 〜
ホワイトペーパー(TechTargetジャパン)
「ITmedia マーケティング」新着記事
トレンド総研、会社員500名を対象に「仕事とソーシャルメディアに関する調査」を実施
生活者の意識・実態に関する調査をおこなうトレンド総研は5月21日、会社員500名を対象に...
テクノロジーが変えるわたしたちの振る舞い――デジタルマーケティング時代のマーケターの責務とは
いまや、わたしたちのポケットには全世界の情報が集まっています。テクノロジーがそんな...
ソーシャルメディア対応CRMと従来型CRM、3つの違いとは?
現在中小企業のビジネスコミュニティの中で、「最新型のソーシャルCRM対従来型CRMのどち...





