【レポート】
Mayaの特徴は、HTMLによる表示と処理のロジックが分離している点にある。たとえばプレゼンテーション層の代表的な技術であるJSPは、HTML文書にロジックを埋め込むし、それはPHPでもJavaScriptでも同じだ。MayaではHTML文書による表示と処理のロジックが、HTML文書とXML設定ファイルの2つに分離している。HTML文書は通常のHTML文書であり、XML設定ファイルはJSPのようなタグ形式の記述になっている。HTML文書とXML設定ファイルから、実際にブラウザに表示されるHTML文書が動的に生成される仕組みになっている。
Mayaのもうひとつの特徴は、HTML文書とXML設定ファイルを関連づける方法として、いくつかの方法が提供されている点にある。複数の方法を提供することで状況に応じた方法が採用できる。idを指定する方法はHTML文書への編集が必要になるが、XPathを使ってインジェクションを行う場合は、HTML文書への編集を行わなくとも、設定ファイルの編集のみでロジックを適用することができる。ロジックはHTML文書のほうに組み込むことも可能だ。
取り上げるべきMayaの特徴はほかにもいくつかある。XML設定ファイルはそのままに、HTML文書の方を動的に切り替える機能なども便利だ。ブラウザの言語設定によって使用するHTML文書を変更したり、ブラウザの種類によって使用するHTML文書を変更したりといったことができる。携帯電話ごとにHTML文書を変更する場合などに重宝する機能だ。
HTML文書のテンプレート化機能や、HTML文書の継承なども興味深い機能だ。どちらもHTML文書の再利用に役立つ。HTML文書のテンプレート化は、HTML文書をコンポーネントとして使い回すことができる機能で、継承機能はHTML文書を継承してヘッダとフッタはそのままに本文だけを書き換えるといった場合に使うことができる。
Mayaを採用した場合のもっとも大きな効果は、HTMLの作成と、ビジネスロジックの作成を完全に分離担当できる点にある。HTML文書の作成はWebデザイナが担当し、ビジネスロジックはWebプログラマが担当する。両者のインジェクションをMaya技術者かWebプログラマが担当する。これまでの技術ではHTML文書にフックをいれるといった編集が必要だったが、Mayaではそこも分離することができる。
そしてもう一点注目するべきは、Mayaはほかのテクノロジーのように設計思想やそういったものを背景として一辺倒のスタイルを提供しているものではなく、多くの手段を提供している点にある。idを指定して確実にインジェクションしたければそうできるし、HTML文書にロジックを埋め込みたければそれもできる。複数名で分散開発する用途にも採用できるし、一人ですべて開発するスタイルにも適用できる。この懐の広さがMayaの魅力だ。
そして注目するべきは、MayaではJavaを書く必要がないということだ。MayaはJavaテクノロジーをベースにして構築された技術だが、それを使うにあたってJavaを書く必要はない。表示はHTML文書であり、ロジックはJavaScriptを使う。どちらも既存の広く使われている技術だ。もちろんJavaを使うこともできる。
しかもMayaはSeasar2プロダクトに依存したプロダクトではなく、それ単体でほかのテクノロジーと組み合わせて使うことができる。表示はMaya、ロジックはJavaScript、バックエンドはStrutsといった組合わせも可能だ。従来のシステムへの導入も行いやすい。
栗原氏からは、StrutsをMayaに書き換えるにはどうすればよいかという指針の紹介もあった。まず、JSPの部分をHTML文書にする。JSPカスタムタグをXML設定ファイルに置き換える。次に、フォワードの指定をJSPファイルからHTMLファイルに変更する。もちろん、JSPとも混在が可能であるため、必要に応じて導入するといったことも可能だ。
Mayaは11月までに1.0.0のリリースが予定されている。設計や実装の大半はすでに目処がついており、あとは不足しているドキュメントや作成したドキュメントの英訳作業が残っているという。来年の3月には、Mayaの事業成果が最終的にリリースされる予定だ。
栗原氏は、将来的にライセンスを現在のApache Lisence Version 1.1に類似したライセンスから、Apache Lisence Version 2.0のライセンスそのものや、BSDライセンスのような企業とタイアップしても扱いやすいライセンスに変更することを考えているということも紹介した。今後どのようなライセンスを採択するかはまだわからないが、APL2やBSD Licenseのようなライセンスになるだろうということだ。
日本人技術者は英語が苦手な人も少なくないため、国内発技術は資料が日本語で手に入りやすいという点でも需要が多い。Mayaはそうした技術のひとつだ。JSPやVelocityが英語資料ゆえに難しいと感じている技術者はMayaの採用を検討してみるのもいいだろう。
アプリケーションにせよフレームワークにせよ、日本は輸出入ベースで大きな格差を抱えている。ソフトウェアに関してはまったくの依存体質だといわれている。それはオープンソースソフトウェアにおいても同じで、日本発の技術は少なく、多くの重要なテクノロジーが海外で開発された技術に依存している状況だ。そうしたなか、Mayaのような国内発の技術は珍しい。今後も注目する価値があるといえるだろう。
| オープンソースカンファレンス2005 - 今楽しみなApache 2.1 [2005/3/29] |
| ビュー/ロジック分離型テンプレートエンジン Maya 0.9.8公開 [2005/8/5] |
| メッセージドリブンPOJOを実現する軽量JCAコンテナJencks - SOAの実現へ [2005/9/22] |
| オープンソースのESBによるSOAの実現 - ServiceMix 1.0-M1公開 [2005/7/26] |
| 千葉工大 東京スカイツリータウンキャンパスがオープン! - 新型ロボも登場 [19:00 5/23] |
| 産総研、変性タンパク質の活性を回復させる有機ナノチューブゲルを開発 [18:30 5/23] |
| NIMS、空気中の物質を感知して発光するフィルムを開発 [18:29 5/23] |
| 日本NI、最大6.6GHzでRF信号ルーティングが可能なスイッチモジュールを発表 [18:26 5/23] |
| TI、SPICEモデル付きのSAR ADCを発表 [18:24 5/23] |
|
白か黒か? 『劇場版ポケットモンスター ベストウイッシュ』、7月12日放送 [00:47 5/24] ホビー |
|
TVアニメ『Fate/Zero』、第21話「双輪の騎士」の先行場面カットを紹介 [00:16 5/24] ホビー |
|
アニメ「夏目友人帳」展覧会の開催決定、主題歌集発売で [00:00 5/24] ホビー |
|
[ポケットモンスター]人気投票で放送作品を決定 異例の試み [00:00 5/24] ホビー |
|
【コラム】Windowsスマートチューニング 第188回 Vista/7編: タスクスケジューラでリマインダー通知を行う [23:07 5/23] パソコン |
4つの診断で、自分の適性を見つめなおそう!
働くこと・挑戦し続けることへの思いを綴ったインタビュー
あなたにピッタリのアドバイスを読むことができます。
転職に必要な情報が収集できます
企業からアプローチのメッセージが届きます。