J2EE関連の最新トピックをわかりやすく解説
J2EE Watch [10]
Java技術者がフロントにFlashを選択した理由とは?
聞き手・構成
スティルハウス
吉川和巳
2006/7/20
おそらくJavaエンジニアの多くが、HTMLベースのおなじみのWebアプリケーション開発の現場で、ある種の“カベ”に直面しているのではないだろうか。顧客のニーズを満たすために、 HTMLの制約と格闘する苦労。データベースとHTML間のバケツリレーに終始する中で生じる、「なぜPHPではなくJavaなのか」という疑問。こういったさまざまなカベがある。 そういった状況の中で、その回答として、UI に Flash を選択した人たちがいる。クラスメソッド株式会社 代表取締役 横田聡氏、株式会社電通国際情報サービス 事業推進本部 開発技術推進センター Seasar2技術推進グループ 主任 公門和也氏、日本電気株式会社 システム技術統括本部 矢野直彦氏の3氏だ。 開発者向けのFlash UI構築ツール「Adobe Flex2」(以下Flex)を活用して、Java EE開発における課題の克服にチャレンジした先駆者たちの経験に学ぶこととは? |
■「見た目、どうにかならないか」というカベ
「見た目、もう少しどうにかならないか」。クラスメソッドの横田氏が2年ほど前にFlex導入を検討し始めたきっかけは、あるとき客先から言われたこの言葉だったという。そのとき横田氏が手がけていたのは、客先が以前に導入したVisual BasicやDelphiベースのクライアント/サーバ・システム(以下C/Sシステム)をWebアプリケーションでリプレースする案件である。つまり“C/SシステムのWeb化”だ。
クラスメソッド株式会社 代表取締役 横田聡氏 |
クラスメソッドの得意分野は、StrutsやSpringといったJava EE(J2EE)技術を中心とした、Webアプリケーション開発やコンサルティングである。クライアント側のテクノロジーとしてはHTMLやJavaScriptを利用していたが、とりわけC/SシステムのWeb化では、Visual Basicなどのクライアント・アプリケーションのユーザーインターフェース(UI)や操作感を忠実に再現する上で、HTMLの限界に直面していたという。
「(既存アプリケーションの)オペレータは、もう5年も6年もそのUIに使い慣れています。そうしたオペレータは、キーの配置などを覚え込んでおり、マウスに触れずにキーボード操作だけで次々と入力していきます。そうした使い勝手をできるだけ変えたくないというのが、お客様の要望でした」(横田氏)。
つまり、もしWeb化により少しでも使い勝手が変化すると、それはそのまま新システム導入の教育コストに跳ね返ってしまうのである。
HTMLによる制約が顕著に表れる一例として、横田氏は「データグリッド」を指摘する。データグリッドとは、例えばHTM のテーブルタグのように、データベース検索結果などを表形式で表示するUIを指す。
「Visual BasicやDelphiではデータグリッドによる(ページ遷移を伴わない)ソートやセルの色の変更などが、当たり前に実装できていました。それがWebアプリケーションでは、いきなりHTMLのテーブルタグのレベルにまで(機能性が)落ちてしまいます。いまではAjaxなどで実装可能になりましたが、従来のHTMLのみによる対応は困難でした」(横田氏)。
Flex2によるデータグリッドの例。ソートやカラムサイズ変更、カラム入れ替え、セル編集などが可能 (クリックすると拡大) |
■「JavaではなくPHPでもよいのではないか」という閉塞感
電通国際情報サービスにおいて、オープンソースのDIコンテナ「Seasar2」を中核とするシステム・インテグレーションに携わる公門氏は、2年ほど前からFlexの導入を積極的に進めてきた。例えばSeasar2では、Strutsとの連携に加えて、Flexとの連携を実現するプロダクト「S2Flex」および「S2Flex2」を実装しており、顧客のニーズに応じてUI技術を自在に選択できる柔軟性を提供している。
株式会社電通国際情報サービス 事業推進本部 開発技術推進センター Seasar2 技術推進グループ 主任 公門和也氏 |
公門氏は、HTMLベースのWebアプリケーション開発に対してJava EE開発者が抱えてきた、ある種の“閉塞感”を次のように表現する。
「Strutsは、良くも悪くも新鮮味はないですね。すでに枯れた技術であって、いつもと同じようなコードを書くだけで、Webアプリケーションを難なく作成できます。結局データベースのテーブル定義さえ固まれば、そこからフロント側はツールで自動生成することも可能です。しかし、それならばJavaではなくPHPで十分ではないか、という風潮も最近はありますね」(公門氏)。
同氏は、こうしたJava EEの行き詰まりを打開するブレークスルーとしてのFlexに期待を寄せる。
1/2 |
INDEX |
||
J2EE Watch [10] | ||
Page1 「見た目、どうにかならないか」というカベ 「JavaではなくPHPでもよいのではないか」という閉塞感 |
||
Page2 Java開発者から見たAjaxとFlex 課題はフレームワーク Flex2+Java EEで変わる設計手法 |
Java Solution全記事一覧 |
- 実運用の障害対応時間比較に見る、ログ管理基盤の効果 (2017/5/9)
ログ基盤の構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。今回は、実案件を事例とし、ログ管理基盤の有用性を、障害対応時間比較も交えて紹介 - Chatwork、LINE、Netflixが進めるリアクティブシステムとは何か (2017/4/27)
「リアクティブ」に関連する幾つかの用語について解説し、リアクティブシステムを実現するためのライブラリを紹介します - Fluentd+Elasticsearch+Kibanaで作るログ基盤の概要と構築方法 (2017/4/6)
ログ基盤を実現するFluentd+Elasticsearch+Kibanaについて、構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。初回は、ログ基盤の構築、利用方法について - プログラミングとビルド、Androidアプリ開発、Javaの基礎知識 (2017/4/3)
初心者が、Java言語を使ったAndroidのスマホアプリ開発を通じてプログラミングとは何かを学ぶ連載。初回は、プログラミングとビルド、Androidアプリ開発、Javaに関する基礎知識を解説する。
|
|