【レポート】
2007年10月17日~19日の3日間、Groovy/Grailsに関する初の国際カンファレンス「Grails eXchange 2007(以下、GeX2007)」が英国ロンドンで開催された。本稿では、同カンファレンスのレポートと併せて、Java開発に新風を吹き込む開発技術「Grails」について紹介していきたい。
ますは、Grailsについて簡単に説明しておこう。
これまで、Grailsは、「Ruby on RailsのGroovy版」で片付けられているところがあった様に思うが、この認識は現時点では正しいとは言えない。また、Spring、Hibernate、SiteMeshなど、WEBアプリケーション開発において実績のあるフレームワーク群を基にしたフルスタック・メタフレームワークだが、これらのフレームワークを単に"一緒に使用している"だけのものでもない。
Grailsは、優れた着想と一貫性に基づき、Java VM上で動作するアプリケーションの開発を広範囲に改善する、技術体系の転換(パラダイムシフト)を実現するアーキテクチャなのである。以下、その詳細に触れていく。
Grailsは、Groovyという動的言語の機能を、最大限に有効活用できるよう設計されている。しかし、Grailsのダイナミックな性質をもたらしている理由はそれだけではなく、多くの工夫や仕組みが加えられている。
たとえば、Grailsでは、任意のリソース(Grailsソース、Javaソース、設定ファイル、メッセージバンドルなど)の変更を即座に検出し、それに依存するモジュールが呼び出され、必要なら該当リソースを再コンパイルしたり、設定を再読み込みしたりし、再起動することなしに作業を実行することができる。設定はCoC(Convention over Configuration)で通常は不要であるが、設定が必要になる場合でも設定用のDSL(Domain Specific Languages)によって直感的に記述できるようになっている。
このような仕組みや設定方法が、Grails全体に徹底的に適用されており、Grailsが基盤として採用しているSpringやHibernateの機能はすべて「Grails流儀」で用いることができるようになっている。
なお、Grailsは多くの優れたコンセプトをRails(および他のスクリプト言語ベースのWebアプリケーションフレームワーク)から近い形で、あるいはそれを洗練した上で取り入れている。代表的には以下の機能である。
次ページ以降では、これらの中でも特徴的なものピックアップして紹介していく。
著者プロフィール
上原潤二: NTTソフトウェア Javaテクニカルプロフェッショナル。主な業務はフレームワーク適用支援など。2004年には『月刊JavaWorld』(IDGジャパン発行)にてGroovyの特集記事を執筆している。
山本剛: ニューキャスト CTO。出版系システムなどの開発に従事するかたわら、Grailsの研究にも従事する。今回のGeX2007では、「Acegi on Grails」というセッションの講師を担当した。
| トマトを食べれば痩せられる!? -京大ら、新発見の成分で肥満改善効果を実証 [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] ライフ |