[連載]
初めてのEnhydra

第3回 XMLCアプリケーションの基礎




5.コンポーネント化で開発効率を上げる

 ここまでで、基本的なXMLCの使い方は理解できたと思います。ただし、実際の開発ではこのような単純なケースだけでは済まないことも多々あります。当社も自社サイトの開発においては、ダイナミックにデータベースの値をもとにハイパーリンクを生成したりボタンの代わりに画像を使ったりということをしました。これらのコードを毎回地道に書いていくのは骨の折れる作業です。

 そこで、簡単な例として画像をクリックするとほかのページにジャンプするというのを埋め込むためのElementsクラスというのを作成して、それを使うことで開発効率を向上させるというサンプルを作成してみます。必ずしもこの例が正しいとは考えていませんが、独自のライブラリを作成する参考にしてください。ご紹介するコードは、ここからダウンロードしてください。

 ElementsGeneratorの作成

 まず、新規プロジェクトを作成し、プロジェクト名を「elm_sample」にして「Enhydra Super-Servlet」を新規で作成します。

■ElementsGeneratorクラスの作成

 ElementsGenerator(と当社内で勝手に呼んでいます)の「elementsクラス」を作成します。[ファイル|新規クラス]を選択しクラスelementsを作成します。

クラスウィザードでelementsクラスを作成する

 presentationフォルダに作成したelementsクラスを追加します。

■Welcome.htmlの修正

 presentationフォルダのWelcome.htmlを開き修正します。次に[ウィザード|XMLC Compiler]を実行しWelcome.htmlをコンパイルします。最後に、[ウィザード|Enhydra Deployment]を実行します。

■WelcomePresentation.javaの修正

 presentationフォルダのWelcomePresentation.javaを開きソースを書き換えます。実行結果は以下のような画面になります。

実行結果

 いかがでしたでしょうか? 実際にはテーブルタグの組み合わせなどを実装したりすると、非常に凝ったGUIを簡単に実現していくことが可能です。

 さてXMLCを使った開発は、ビジュアル面を担当するデザイナーとロジック面を担当するプログラマーのより良い分業体制を実現することができます。ほかのHTMLドリブンのテクノロジと比較すると、最初の敷居が若干高いように感じられるかもしれません。しかしデザイナーに「一切」プログラムコードを見せる必要がなくなるだけでもストレスは大幅に軽減されます。id属性のマッピングさえ管理していれば、デザインが上がらなくても先にプログラミングを先行させることは十分に可能ですし、その逆も然りです。いずれにせよ、デザインがプログラミングの片手間でできるなどという幻想はもはや通用しなくなっている以上、これまでの技術にすがることは生産性の低下を引き起こすとさえいえるでしょう。

 また最後に追記しておくと、XMLCはその名のとおりXMLを対象にできます。今後XMLがデータ交換の主流となることが疑い得ない状況のいま、動的にXMLフォーマットを制御可能なテクノロジとして考えても、応用範囲の広いテクノロジであると断言できます。ぜひこの機会にXMLCのポテンシャルを実感してみてほしいと考えています。

 さて、次回はHTTPプロトコルには付き物のセッション管理について取り上げます。

5/5

初めてのEnhydra(第3回)
  1.Enhydraの最新動向
日本語版Lutris Enhydra 3.5が出荷される
  2.XMLCとは何か
Enhydraのアプリケーションフレームワーク
XMLCが行うこと
  3.実際にアプリケーションを作成してみる
サンプルアプリケーションを実行してみる
“Hello XMLC”を作成してみる
  4.インタラクティブなFormの作成
入力した値を表示するアプリケーションを作成する
5.コンポーネント化で開発効率を上げる
ElementGeneratorの作成



連載記事一覧

 



Java Agile フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Java Agile 記事ランキング

本日 月間