SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

話題のあの人にインタビュー!

Adobe開発者が教えてくれた「ColdFusionとFlexの違い」


ColdFusionとFlexは何が違う?

 実は「違いがよくわからない」という声はたくさん聞きます。私どもとしては大変残念なんですが、私たちの伝え方が悪かったと反省もしているところです。

ColdFusionとFlexは、お互い「違う領域」で機能する技術なんですね。

 ColdFusionが対象とする問題は「ビジネスロジックの統合」なんです。ColdFusionがハブとなり、どんなDBとも接続できるし、COMや.NETなどのバックエンドアプリケーションとも接続できる。そして結果を、クライアント側にWebコンテンツとして提供します。HTMLやJavaScript、CSSといったお決まりのソースを出力するわけです。

 一方、Flexはクライアントサイドの仕事をします。ですからFlexというのはHTMLやJavaScript、CSSを置き換えるための仕組みなんです。具体的にはこれをFlashに置き換えます。Flexがビジネスロジックとできるやりとりは「データ」だけです。それをFlashプレイヤーで実行できるアプリケーションとしてクライアント側に返す仕組みなんですね。

 だからFlexはバックエンドとのつなぎは全くできません。DBとの連携はもちろん、.NETやCOMとの連携はできない。Eメールなどの送受信もできません。Flexはバックエンドでどうなっているのか知ることはできないんです。

 そのため、Flexを使うためにはバックエンドとつないでくれる「何か」が必要なわけです。それがASPだったりPHPだったり、ColdFusionでもいいんですが、とにかくそのつなぎの部分が何か無いとFlexは機能しないんです。

担当しているレイヤーが違うということですね。

 こう見てもらうとわかると思います。ColdFusionはサーバ上にあり、バックエンドと接続しています。Webからリクエストを立てて、それをHTMLやCSS、JavaScriptという形で戻します。

ColdFusionとFlexの役割
ColdFusionとFlexの役割

 一方、FlexというのはFlashプレイヤー上で起動するアプリケーションを返す仕組みです。ColdFusionとはUIではなくデータという意味でつながることができます。ですからFlexというのはプレゼンテーション部分での「レンダリング作業」という点ではColdFusionと競合する関係かもしれませんが、コアのエンジンは全く違うんです。

ColdFusionはサーバということでしょうか?

 ColdFusionはサーバではないんです。サーバだと思われている人が多いんですが、その正体はJavaのアプリケーションです。J2EEサーバ上で動作するものなんです。

ColdFusionはJ2EEサーバ上で動作する
ColdFusionはJ2EEサーバ上で動作する

 手軽に使いたい方にColdFusionをJ2EEサーバにビルトインした状態で提供することもできます。もちろん、ColdFusionはJBOSSやWebsphere、WebLogic、その他のJ2EEサーバにデプロイすることができます。そして、WebブラウザからColdFusionにアクセスがあった場合、まず、IISやApacehなどWebサーバにアクセスすることになります。その後、ColdFusionにつながるのです。

 また、ColdFusionはJavaアプリケーションですが、開発時は「CFML」と呼ばれるXMLを拡張した言語でコーディングします。タグを書きつつ、その中にパラメータを設定します。タグ言語ですので、そのままHTMLと同様のレイアウトにもなります。

 これらのコードは開発時にしか存在しません。開発し終わったあとはソースコードを変換し、最終的にはJavaのクラスファイルになるんですね。つまりJavaアプリケーションになるんです。ColdFusionの開発コードは開発時にしか存在しないんです。

次のページ
海外市場と日本市場

この記事は参考になりましたか?

話題のあの人にインタビュー!連載記事一覧

もっと読む

この記事の著者

飯岡 幹雄(編集部)(イイオカ ミキオ)

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/1862 2008/09/12 11:53

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー