torutkのブログ

ソフトウェア・エンジニアのブログ

Java開発環境最新状況

今年6月は、NetBeansEclipseそれぞれ最新バージョンのリリース月となりました。開発ツールは手に馴染んだものが効率がよいし、どちらも高度に発展しているので、好きな方を使えばよいというところとは思います。が、どっちがいいの?と聞かれたときに、一応得失を把握しておこうと整理してみました。

今回は、Javaを主眼に情報集めしているので、C++PHPRubyなどの他言語は割愛しています。

比較一覧表

項目 Eclipse NetBeans 備考
バージョン 3.6 6.9
対応OS Windows(32,64bit), Linux(32,64bit), MacOS(Cocoa 32,64bit) Windows, Linux, Solaris(Intel,SPARC), MacOS X, OS非依存zip
パッケージ種類(Java限定) JavaEE,Java(SE),Classic JavaSE,Java(EE)
日本語化 Eclipseは有志の日本語化パッケージで日本語化可能
バージョン管理連携 CVS CVS,Mercurial,Subversion Eclipseは別途プラグインSubversion他に対応
アプリケーションサーバ 別途インストール Glassfish 3.0.1,Tomcat 6.0.26
ビルドツール 内蔵ビルド機能 Ant, Maven EclipseはAntのエクスポート機能有り
ユニットテスト 標準(JUnit4.8.1) 標準(JUnit3.8.2,4.5)
プロファイラ 別途 標準 Eclipse無償だとTPTPか?
ヒープ解析 別途 標準 Eclipse無償だとTPTPか?
Swing画面作成支援 VEあるが非常に厳しい かなりいけてる

特記事項

Eclipse
  • デフォルトでは、Javaソースコードエディタ中で予約語がボールド(太字)体となるが、このとき日本語フォントではインデントがずれるというかなり致命的な問題があります。回避手段としては、
    • 使用するフォントを英語(たとえばConsolas)にします。[ウィンドウ]メニュー→[設定]で表示される「設定ダイアログ」上、左側ペインで[一般]→[外観]→[色とフォント]を選択し、右側ペインで、[Java]→[Java エディター・テキスト・フォント]を選択、その右側にある[編集]ボタンを押し、フォントを指定します。このとき日本語は別なフォントに代替されますが、これが何になるか、サイズがどうなるか、かなり微妙です。
    • 予約語をボールドにしないよう設定します。[ウィンドウ]メニュー→[設定]で表示される「設定ダイアログ」上、左側ペインで[Java]→[エディター]→[構文の色]を選択し、右側ペインで、[要素]欄で[Java]をドリルダウンし、['return'を除外したキーワード]を選択、その右側にある[太字]チェックボックスのチェックを外します。次に、同様に[要素]欄の同じ並びにある[キーワード'return']を選択、その右側にある[太字]チェックボックスのチェックを外します。[適用]ボタンを押し、[OK]を押します。
    • JStyleプラグインを別途インストールします。
  • Eclipse profiler pluginは開発中止

2008-05-26付 "Project is dead and does not work on new versions of Eclipse"だそうです。 TPTPか商用のプラグインを使えとのことですが、TPTPは微妙・・・

メモ

Eclipseのパッケージングで興味深いもの

BI(Business Intelligence)ツールの開発環境です。Eclipse BIRTとも呼ばれているようです。紹介記事へのリンクを以下に記します。
http://www.infoq.com/jp/articles/birt2-intro

ESB(Enterprise Service Bus)としてSwordfishを組み込み、SOAベースのアプリケーション開発する環境です。Swordfishについては、Apache ServiceMixをベースにしているらしいです。

Eclipseは4.0が7月にリリースされるらしい

機能的には3.6(Helios)と同等ですが、内部構造をリファクタリングし新しいアーキテクチャで作られた今後の基盤となるもののようです。

Eclipseって本当にいいの?

なんか、Eclipseどうしちゃったんだろう、という状況に見えます。日本語環境の設定に手間がかかる、アプリケーションサーバは別途用意が必要、プロファイラは無償では貧弱、Swing開発環境は無償ではあまりに貧弱、などなど・・・
だから、All-in-one XXX というEclipseディストリビューション(?)が幾種類も出ているのかと納得しました。
7-8年前は、Eclipseが凄い環境に思えたし、この2,3年Linux/C++Eclipseを使っていたのですが、JavaではEclipseは使っていませんでしたので、ちょっと驚きでした。