InfoQ

InfoQ

News

マイブックマーク

ブックマークするためにログイン または 会員登録 する

ブックマークされました!

ブックマークがエラーになりました。もう一度お願いします。

Groovy/Grailsの現在(JGGUGワークショップ参加報告)

作者 羽生田栄一(株式会社豆蔵) 投稿日 2010年7月29日

セクション
デベロップメント
トピック
言語 ,
Java
タグ
フレームワーク ,
Grails ,
Groovy

JGGUG(Japan Groovy/Grails User Group)の総会とスペシャル版G*ワークショップが2010年7月24日土曜日14:00から18:00に行われた。会場は日本オラクル㈱青山センター。ちなみに筆者は日頃GroovyやGrailsを使うことはないため、本報告はあくまで外部の視点からとして読んでいただきたい。

総会報告後のG*ワークショップでは、GroovyServ、Grails 1.3、Griffon、そしてSpock等がとりあげられた。ちなみに、G*というのは、Groovy,Grailsを総称してという意味である。

参加者は、土曜ということもあり開始時点で20名強といったところだったが、会が進むに連れじわじわと増えてきたようだ。仙台、新潟、大阪などからの参加者もおりコミュニティとしての広がりを感じた。 

JGGUG初の総会開催にあたって、山田正樹(メタボリックス)会長の挨拶の後、GroovyのプロジェクトマネージャGuillaume Laforgeがパリの自宅から送ってくれたビデオメッセージが流された。彼は2003年からGroovyの開発に関わっておりGrailsの立ち上げメンバーの1人でもある。AppEngineの軽量ツールキットであるGaelykの作者だ。

なお今回のイベントでは人手の関係で、ustream配信はなかったようだが、希望が多い場合は再開するということで参加者にアンケートをとっていた。

ワークショップの全容は以下になる。


「最速起動Groovy---GroovyServ Under The Hood---」
発表者:上原潤二、中野靖治(NTTソフトウェア)
「真のGroovyパワーを解放せよ」というミッションを目指した、GroovyServプロジェクトの発想と限界への挑戦、その裏話、苦労話、 koboプロジェクトについて。

「Grailsのススメ(仮)」
発表者: 山本剛 (ニューキャスト)
ここのところリリースラッシュのWebフレームワーク「Grails」。Grailsのクイックスタートから、Grails 1.3.x+αな最新情報、個人的注目プラグイン情報等を紹介。

「Griffon in Practice」
発表者:奥清隆(株式会社クロノス)
GrailsライクなデスクトップアプリケーションフレームワークGriffonの入門から少し突っ込んだ内容まで、デスクトップアプリを楽しく作れる方法。

「G*におけるソフトウェアテスト・シーズン3~めぐりあいOra編~」
発表者:綿引琢磨(デライトテクノロジーズ)
前回に引き続きSpockを用いたBDD、最新のspock 0.4の機能について解説。また、今回はGrailsでの使用方法やJavaアプリケーション開発でのspockの適用方法についても紹介。


 Grailsとは(山本氏の言葉を借りて)簡単に言うと、Springフレームワークを、Groovyでダイナミックに柔軟にして、Webアプリケーション開発をするフルスタックフレームワークということになる。そしてその柔軟さダイナミックさが半端でないため、これからのソフトウェア開発に大きなインパクトをもたらすとJGGUGのメンバーは強く思っている、ということが今回のイベントに参加してみてよくわかった。

ワークショップで興味深かったセッションの一つが、NTTソフトウェアの上原、中野両氏によるgroovyservのセッションだ。社内のOSSプロジェクトの成果の1つで、世界最速起動のGroovyを目指して作られた常駐起動型のGroovyサーバで、スクリプト起動に通常だと数秒かかるところを、なんと0.1-0.2秒という驚異的なスピードで起動するというものだった。筆者が翻訳したコップ本ことMartin Odersky『Scalaスケーラブルプログラミング』への小飼弾氏の書評(http://blog.livedoor.jp/dankogai/archives/51275491.html)においても、Scalaは美人の言語だと全般に評価された上でJVMを使っておりスクリプト言語としての起動が遅いことが唯一の弱点と指摘されていた。Groovyにおいても当然同じ弱点を持つわけだが、そこをGroovyServで解決しようという試みだ。デモを見た感じでは実用性があり、世界的にもGroovyの領域で普及を期待できるものだった。

@nobeansこと中野氏からは、groovyserv内部実装の話があった。UMLのクラス図とシーケンス図を縦横に使っての詳細な仕組みの話は、こんなに複雑なことをしてスピードを稼いでいるのかと非常に興味深いものだった。詳しくは公開されている資料を参照していただきたい。

@tyamaこと山本氏の「Grailsのススメ(仮)」副タイトル「天は人の上に人を造らず、人の下に人を造らず」は内容が盛りだくさん過ぎてここでは紹介しきれないが、いずれ書籍として出版したいとのことなので、興味のある方は期待してほしい。筆者としては、山本氏の考える「Grailsの思想」をコンパクトに解説してもらい非常に勉強になった。「柔軟さを犠牲にせずシンプルさをアーカイブ」するという発想のもとで造られたGrailsは、「形を変えたSpring-MVC」「フレームワークでありながら、他のフレームワークと共存し、さらにフレームワークを開発して派生できる」ということだ。アプリケーションを造ればそれがプラグインになり、簡単に部品として流通できるという点が共通語彙として機能し、DSL駆動開発にもなじむ。現在1.3というバージョンがリリースされ、さらなる進化が期待される。

奥氏のGriffonの話や綿引氏のソフトウェアテスト(BDD/Spock)のセッションも興味深いテーマだったが、残念ながら筆者の都合でゆっくりと聞くことができなかった。

ワークショップ後の懇親会では、LT(Lightning Talk)大会も行われ、G*技術への熱い思い、Griffonを使ったライブデモ、開発現場での悩み、とっておきのネタが披露された。詳しくはTwitter等でフォローして欲しいが、JGGUG関係者のレポートもhttp://d.hatena.ne.jp/ksky/20100726/p1にアップされている。発表資料もまとめて公開されているので興味のある方はアクセスしてほしい。

Groovy本家との交流など海外との連携をとりつつ、GroovyServなど日本からの情報発信も今後期待されるなど、言語/フレームワークのコミュニティ活動として活発に運営されるJGGUG。メンバーの熱い思いを感じた印象的なイベントだった。これからのより一層の飛躍を期待したい。

 

特集コンテンツ一覧

GAE開発の落とし穴

Googleのクラウド環境をつかったGoogle App Engineによる開発するにあたり、初めての試みで苦悩する開発者達の経験をもとに、各開発フェーズにあわせて問題点やどう解決したかをご紹介します

イベントレポート:「Coqチュートリアル#1」

去る1月12日、定理証明支援系ツールCoqの初心者向けチュートリアルが開催さ れた(http://kokucheese.com/event/index/23667/)。今後も2月2日 (http://kokucheese.com/event/index/23744/)、2月9日、2月16日と引き続き開 催されていく予定である。本記事では、開催の様子をレポートする。

Javaの未来についてのNeal Gafter氏とのディスカッション

Choosing Options

Neal Gafter氏はOracleによるJava買収の影響に関する議論、Javaにセグメンテッドスタックやメタオブジェクトプロトコルを追加することについての主張、そしてJavaとC#との比較について話をしてくれた。

Google Dartのエッセンス:アプリケーションの構築、スナップショット、Isolate

GoogleはVMをともなう新しい言語であり、JSコンパイラでもあるDartをプレビューした。 InfoQはDartのアプリの構築に貢献する文法の裏側を探った:スナップショット、Isolate、モジュール方式

CSPベースのモデル検査ツール「Process Analysis Toolkit」

本記事ではCSPベースの「マルチドメイン・モデル検査ツール」である、PAT(Process Analysis Toolkit)について紹介する。モデル検査は、形式手法(Formal Method)という方法論を基礎とする技術であり、複雑さが増大しながらも安全性を求められる、現在のソフトウェア開発の状況に対する処方箋の1つとして注目されている手法である。

Jenkinsによる継続的インテグレーションのススメ(4) ~CloudBeesでJenkinsをサービスとして使う~

前回まで、Jenkinsの幾つかの側面に注目して解説をしてきました。シリーズ最後の今回は、Jenkinsをサービスとして使う方法を紹介します。

書籍『抽象によるソフトウェア設計-Alloyではじめる形式手法-』の紹介

Alloyは、MITにて開発された仕様記述言語であり、ツールによる自動解析を使い、インクリメンタルに形式仕様が書けることが特長である。筆者らはAlloy開発者による、Alloyを使った形式手法入門書を翻訳、今夏にオーム社より刊行した。本記事では、Alloyの簡単な概要と、翻訳書『抽象によるソフトウェア設計』(「Alloy本」)を紹介する。

Windows デバイスで開発するタッチユーザーインターフェイス

スマートフォンを中心としたマルチデバイスにおけるタッチユーザーインターフェイスへの対応は、既に必須の項目となりつつある。本記事では、Windows デバイスにおける UX のベースとなっている「メトロ」というデザイン言語を掘り下げながら、既存環境を意識しつつもどのようにタッチユーザーインターフェイス開発に取り組んでいくべきであるかについて解説していく。