【レポート】
WebアプリケーションフレームワークWicketが正式リリースされたのは2005年の6月。まもなく1年を迎ようとしている。Wicketは、Webアプリケーションの開発を容易にするため、それまでのフレームワークとは一風変わったアプローチを取っていることで注目された。Wicketの現在の最新版はバージョン1.1.1であり、6月には様々な改良が加えられたWicket 1.2がリリースされる予定になっている。本稿では、そのWicketを使用して簡単なWebアプリケーションを作成する方法を紹介する。
いわゆるWebブラウザから操作するWebアプリケーションを開発する場合、いちからすべて作成するということはまずない。まず基本となるWebアプリケーションを決め、実現したい機能から必要になるライブラリをそろえ、それらを組み合わせてシステムの開発をおこなう。
JavaをつかったWebアプリケーション開発の黎明期にはJSP/Servletがその役割を負ったが、Webアプリケーションフレームワークとしては単純すぎた。すぐにより抽象度の高いStrutsがWebアプリケーションフレームワークのデファクトスタンダードとして採用されるようになった。
ここ数年は、StrutsももはやWebアプリケーションフレームワークとしては不十分であるとされることが多く、分野ごとに次世代のWebアプリケーションが模索されている状況にある。現在はかなり多くのWebアプリケーションフレームワークが開発されているが、今後淘汰があり、それぞれのセグメントに適したいくつかのWebアプリケーションフレームワークが生き残っていくことになると考えられる。
Webアプリケーションはいくつもあるが、本稿ではとくにWicketについてとりあげたい。Wicketは複雑さを排除し、シンプルであることを目指したWebアプリケーションフレームワークとしては草分け的存在であり、今後ひとつのフィールドを作り上げる可能性がある。Javaの特徴を活かしたそのフレームワークは、Javaプログラマであれば胸が踊るものだ。
XML設定ファイルへ複雑さを持ち出したWebアプリケーションフレームワークは、高度なサポート機能がついた統合開発環境からの使い勝手を向上させた反面、多くのプログラマにとっては開発をより面倒なものにした。Wicketはそういった状況に、Javaプログラマがプログラマらしい視点をもって開発を実現させてくれるメカニズムを提供する。本稿がWebアプリケーション開発に退屈し始めた人に、新しい面白さを提供できればとおもう。
Wicketとは、簡単に言ってしまえば「シンプルなHTMLとJavaのコードだけでWebアプリケーションを作成するためのフレームワーク」である。Wicketでは、動的なWebページの構成をデザインとロジックに分割し、画面のデザインを記述するHTMLにはロジックのためのコードを埋め込まないようになっている。これによってデザインのためのマークアップとJavaのコードを混ぜて記述する必要が無くなり、デザイナとプログラマの仕事を完全に独立させることができる。
このようにデザインとロジックの分割を謳ったWebアプリケーションフレームワークは他にも多数あるが、Wicketにおいて特徴的なのはHTMLとJavaのコードのみでほぼすべてが完了するという点である。従来の多くのフレームワークではデザインとロジックの関連をXMLなどを利用した設定ファイルに記述するようになっている。この方法の利点は、ソースコードの直接記述しないことでクラスやコンポーネントの再利用性を高められるということである。しかし一方で、設定ファイル自身が煩雑で混乱しやすいという問題も指摘されてきた。
Wicketではそのような設定ファイルをほとんど必要とせず、HTMLファイルとJavaのソースコードを用意するだけでWebアプリケーションが作成できる仕組みを提供している。さらに、HTMLはJSPのような特別なコードを一切使用しないPOHP(Plain Old HTML Page)であり、Javaの方はPOJO(Plain Old Java Object)で構成される。したがってHTMLエディタで作成したページデザインと、ごくシンプルなJavaプログラムだけで立派にWebアプリケーションとして動作させることができるようになっている。Wicketではその他にも様々な機能やコンポーネントが多数提供されており、Webアプリケーション開発をシンプルにするための選択肢のひとつとして注目されている。
| トマトを食べれば痩せられる!? -京大ら、新発見の成分で肥満改善効果を実証 [21:00 2/10] |
| JAXA、液体シリコン中に残存する共有結合を観察 -大口径ウェハの実現に期待 [20:11 2/10] |
| NEDOなど、熱膨張が小さな樹脂複合材料ペレットの量産化に成功 [19:22 2/10] |
| 理研、一般顕微鏡を蛍光顕微鏡に強化できるアダプタを試作して性能を実証 [19:15 2/10] |
| 天の川のブラックホールが小惑星を飲み込んでいる - NASAが発表 [18:08 2/10] |
|
[西部警察]大門のサングラスは照れ隠し? 制作担当者が語る舞台裏 [09:00 2/11] エンタメ |
|
9ストーリーズ ~バレンタインのエピソード~ [08:05 2/11] キャリア |
|
RX-7改フェラーリ登場!/マジックRX-7XX 【大阪オートメッセ2012】 [08:04 2/11] キャリア |
|
【連載】鉄道トリビア 第137回 山手線と京浜東北線から●●●が消えた!? [08:00 2/11] ライフ |
|
JRグループ、「周遊きっぷ」を見直し - 19の周遊ゾーンが3/31で販売終了に [07:30 2/11] ライフ |