Groovy Eclipse Pluginのあれこれ
この記事は、G* Advent Calendar 8日目の記事です。
最近Groovyを一番書いているエディタは、Jenkinsのスクリプトコンソールなikikkoです、こんにちは。Groovyはあまりコアな使い方はしていないので、ライトな記事でいかせていただきます。ということで、GroovyのEclipseプラグインについて。
Eclipseプラグイン
Groovy用のEclipseプラグイン、Groovy - Eclipse Pluginです。主な機能はこんな感じ。公式サイトから転載して、適当な日本語に訳してます。
- シンタックスハイライト
- 型推論
- Eclipse上で、Groovyクラス/スクリプトのコンパイル/実行
- Groovyファイルのアウトラインビュー
- 自動補完
- リファクタリング
- ソースコードフォーマット
- 基本的なデバッグサポート
- Groovy コンパイラ 1.7/1.8のサポート
そういや、Groovy-Eclipseプラグインの設定については、以前こんなのも書いてました。
リファクタリング
多分Eclipse JDTの最も優れている機能の一つであるリファクタリングのサポート。さすがにJDTほどではないですが、Groovyプラグインもちょいちょいサポートしています。
機能的には、
- ローカル変数/メソッド/クラス/フィールドのリネーム
- メソッド/ローカル変数/定数に抽出
- スーパークラスにプルアップ/サブクラスにプッシュダウン
といった、まだまだ基本的な機能ばかり。
ただ、Ctrl+1(cmd+1)のquick fixがあまりサポートされてないのがちょっと残念。使う頻度の高いであろう変数名のリネームもquick fixではサポートされてなく、"コンテキストメニュー > Refactor > Rename"のように遷移しなければなりません*1。
Java<=>Groovy間でのリファクタリング
で、機能面が若干不足していることはとりあえず脇に置いておいて。
少し前にテストをプロダクトコードと別言語で書くことに関するTL - Togetterが話題になりました。(Javaに関しての)結論的な意見としては、大体↓な感じかなと。
ですが、Groovy EclipseならJava<=>Groovyの2言語間でリファクタリングが追随されるんです*2!これで、テストコードは気軽にGroovyで書きつつプロダクトコードはJavaで書いても、どちらでリファクタリングしてもちゃんと整合性が取れます。やったねたえちゃん!
ちなみに、他のIDEは試してません キリッ。まあ、Groovyサポートが手厚いIntelliJとかなら、この辺よろしくやってくれるんじゃないかなと勝手に思っています。
それでは、みなさんよいGroovyライフを!