JetBrains' IntelliJ IDEA Goes Open Source
http://www.jetbrains.com/company/press/pr_151009.html
ΩΩΩ<ナンダッテー!!
ついにというか,やっとというか,IDEA9からフリーのCommunity Editionが登場しましたよ。ついでに,IntelliJ Platformをオープンソース化したんだそうな。まあ,Eclipse/NetBeansの二大フリーIDEに商用IDE(試用ライセンスのみ)で太刀打ちするには無理があるわな。
IntelliJ使う機会が増える事は良い事だけど,Community Editionの機能を見ると,ちょとビミョーではある(素のEclipse並みの機能しかない)。この比較表にはないけど,Community EditionでもInspection&Intensionは使えるんだろうか?つか,使えないとIntelliJ使う意味無い気が...。
→ What’s New in IntelliJ IDEA
JavaEEダメって時点で興味なくす人続出な気もし無くもない(英語版のみって時点でダメだろ)。ただ,Groovy(without Grails)/ScalaはOKなので,そっちに興味ある人はオススメ。特にScala,現状ロクなIDE無いし。
#つうわけで,明日ちょっと使ってみる。
こんなページもできてる。
→ Home - IntelliJ Open-Source Project - Confluence
Re: groovyクロージャについて徒然と
http://d.hatena.ne.jp/uehaj/20091015/1255573409
groovyのクロージャをブロックとして使っていると、breakとかcontinueとかができませんのできっと誰もが最初はあれ?と思ったはず。
groovyクロージャについて徒然と - uehaj's blog
理由は単純で、クロージャというのは無名メソッド定義であって、たまたま平たくコード中にならんでいて、スコープ則にしたがって変数参照ができますが、実体は別メソッドなんですね。
そう,Groovyのクロージャはブロックではない。なのでデバッガで追跡するときは,ちょっとしたコツ(というかクセ)が要るのです。たとえば,こんなしょうもないコードがあったとして,
(1..4).each { println it } println "done"
最初の行にブレークポイントを仕込んだとしよう。デバッガ動かして,最初の行で止めたとしてStep Overすると,クロージャには入らず最後の行に移動してしまう(だってブロックじゃなくてメソッドだもん)。なので,この場合はStep Intoが正解。
最近のIntelliJ(たぶんIDEA8あたり)だと,クロージャの中にブレークポイント仕込んでも,それっぽくトレース出来るようになったけど,昔はクロージャ内にブレークポイント仕込めなかったんだよね。:-(
デバッガで起動すると,こんな感じでブレークポイントにたどり着く(左側のスタック情報(frames)に注目!)。