【3】思い立ったらとにかく「クイックサーチ」
検索ボックスがツールバー部へ表示され、ここにキーワードを入れることでファイル検索、メニュー検索、設定の検索など、キーワードに対応するあらゆる要素を検索して表示してくれるようになりました。
何か疑問に思い調べたいことがあれば、この検索ボックスへキーワードを入力すれば良いので、最近の多機能なEclipseを使いこなすのを助けます。
【4】デフォルトで、手厚くなったGitサポート
IndigoからGitをサポートする「EGit」プラグインを提供するようになりましたが、JunoからはEclipse IDE for Javaなどいくつかのパッケージで標準でEGitが含まれるようになりました。
また、Eclipseプロジェクト自体は次のSCM(構成管理システム)としてGitを選択しました。Junoでは多数のプロジェクトの開発がGit上に移行し、残りのCVSは2012年12月21日に停止されることが決定されました。
EGitのバージョンは2.0となり、stashやsubmoduleといった機能がサポートされるようになりました。
stashを使えば、ある作業(例えば機能追加としましょう)を行っている最中に別の作業(例えば緊急のバグ修正)が来た場合でも、現在の編集内容を一時退避しておいて、割り込み作業ができます。
また、submoduleサポートにより、複数のプロジェクトから構成されるような大規模なシステム開発を行う場合でも、共通のライブラリのリポジトリをインポート・管理することが簡単にできるようになります。
その他、各種ビューが改善され、より使いやすくなりました。
【5】JVMで動作するシンプルな言語「Xtend」とは
「Xtend」は、Eclipse Foundationで開発される新しい言語で、GroovyやScalaと同じようにJVMで動作するシンプルな言語を目指しています。
XtendはBetter Javaを目指しており、基本的にはJavaの文法をそのまま利用しながら、冗長は記述や宣言を省略できたり、クロージャやプロパティアクセスと言った、今風の言語の特徴を取り入れています。
また、Javaの持つ静的な型定義を受け継いでいるので、先進的な言語の特徴を受け継ぎながら、安全なコーディングができます。Xtendで記述されたコードは、Eclipse上でJavaのコードに変換、Javaコンパイラでコンパイルしてから実行されます。
またXtendは、DSL(ドメイン特化型言語)を作成する「Xtext」を利用して作成されています。Xtextを利用すると新しく定義した言語をJavaに変換し、コードの補完などコーディングを支援するツールを作れます。Xtendは、Groovy、Scalaより後発な言語ではありますが、すでにコーディングを支援するツールが提供されています。
サンプルコードを簡単に見でみましょう。例えばタイトルと価格を持った書籍のデータクラスの定義は、次のように行えます。
…… @Data class Book { String title; int price; } ……
「@Data」を付けることにより、コンストラクタやGetter/Setterが自動的に生成されるので、従来よりシンプルに記述できています。また、条件によるフィルタを利用することができます。例えば、3000円以下の書籍のみ抽出するフィルタは、次のように書けます。
…… var books = new ArrayList(); books.add(new Book("Gitポケットリファレンス",2604)); books.add(new Book("jQuery Mobileスマートフォンアプリ開発",2940)); …… var cheapBook = books.filter[price < 3000]; ……
Xtendの型推論などによりbooksの型宣言が省略されているのが確認できます。
詳細は、XtendのWebサイトをご覧ください。
【6】設計と実装の“ずれ”を検出する「Mylyn Intent」
仕様変更時のコードに対する影響の解析は、ソフトウェア開発における昔からの課題の1つです。
Intentは、Eclipseでタスク管理機能をサポートする「Mylyn」のサブプロジェクトで開発されているプラグインで、「Intent Document」という独自の形式で記述したドキュメントを作成することで、ドキュメントとコードを対応付けられます。
Intentにより、設計と実装の“ずれ”を検出し、設計書とコードの同期を取れるようになります。
【7】プラグインのインポート機能
いくら新しいバージョンがリリースされたからといっても、プラグインをインストールし直したり、環境を構築し直すのは、面倒です。Ingdigoから提供されているすでにインストール済みのEclispeからのプラグインのインポート機能を利用すると簡単にJunoに移行できます。
プラグインを移行するには、メニューの[ファイル]→[インストール]→[既存インストールから]を選択し、既存のEclipseのインストールディレクトリを選択することで、プラグインを移行できます。
プラグインは、以前のバージョンと互換性はありますが、まれに動作しないプラグインがあります。その場合、動作しないプラグインに新しいバージョンがリリースされていればバージョンアップしてみてください。
コラム Eclipse 4.2の日本語環境
前バージョンのIndigoと同じく、柏原真二氏を中心に開発されているEclipseのディストリビューションである「Pleiades」を利用する方法と、「Eclispe Babel Project」で配布されている言語パックを利用する方法があります。
なお、言語パックリリースに先立って、伊賀敏樹氏から配布されている「Eclipse日本語化言語パック(サードパーティ版)」を利用することもできます。。
Pleiadesは翻訳リソースがないプラグインでもある程度自動的に翻訳してくれるので、お勧めですが、まれに追加したプラグインが正しく動作しないことがあります。副作用が嫌な方は、言語パックを利用すると良いでしょう。
Code RecommendersはAndroidにも対応予定
今回は、Eclipse Junoについて紹介しましたが、いかがでしたでしょうか。最近は地味なバージョンアップが主でしたが、今回はメジャーバージョンアップということで、いくつか目新しいものが入ってきており、Gitサポートの強化やマルチウィンドウ化によるマルチディスプレイへの対応など、開発者の環境変化に応じた機能を提供してきています。
またEclipse Code Recommendersでは、コードのコンテキストに基づき補完候補やテンプレート挿入する機能の開発も視野に入っており、機能が向上していけば、コーディングの快適さが格段にレベルアップすることが期待されます。
Code Recommendersは、現在はEclipseのプラグインとJava APIの一部しか対応していませんが、将来的にはAndroidのAPIもサポートされるようです。
- exe/dmgしか知らない人のためのインストール/パッケージ管理/ビルドの基礎知識
- これでGitも怖くない! GUIでのバージョン管理が無料でできるSourceTreeの7つの特徴とは
- DevOps時代の開発者のためのOSSクラウド運用管理ツール5選まとめ
- GitHubはリアルRPG? そして、ソーシャルコーディングへ
- ついにメジャーバージョンUP! Eclipse 4.2の新機能7選
- いまアツいアジャイルプロジェクト管理ツール9選+Pivotal Tracker入門
- Git管理の神ツール「Gitolite」なら、ここまでできる!
- Java開発者が知らないと損するPaaSクラウド8選
- Eclipse 3.7 Indigo公開、e4、Orion、そしてクラウドへ
- AWSの自由自在なPaaS「Elastic Beanstalk」とは
- Ant使いでもMavenのライブラリ管理ができるIvyとは
- 「Hudson」改め「Jenkins」で始めるCI(継続的インテグレーション)入門
- Bazaarでござ〜る。猿でもできる分散バージョン管理“超”入門
- Review Boardならコードレビューを効率良くできる!
- Team Foundation ServerでJava開発は大丈夫か?
- コード探知機「Sonar」でプロジェクトの深海を探れ!
- 単体テストを“神速”化するQuick JUnitとMockito
- Java EE 6/Tomcat 7/Gitに対応したEclipse 3.6
- AzureのストレージをJavaで扱えるWindowsAzure4j
- 究極の問題解析ツール、逆コンパイラJD-Eclipseとは
- AWS ToolkitでTomcatクラスタをAmazon EC2上に楽々構築
- DB設計の神ツール「ERMaster」なら、ここまでできる
- Webのバグを燃やしまくるFirebugと、そのアドオン7選
- Googlerも使っているIntelliJ IDEAのOSS版を試す
- JUnit/FindBugs/PMDなどを総観できるQALab/Limy
- ブラウザを選ばずWebテストを自動化するSelenium
- Eclipse 3.5 Galileoの「実に面白い」新機能とは
- App Engine/AptanaなどJavaクラウド4つを徹底比較
- Aptanaなら開発環境とクラウドの連携が超お手軽!
- 分散バージョン管理Git/Mercurial/Bazaar徹底比較
- SubversionとTracでファイル管理の“迷宮”から脱出
- Trac Lightningで始めるチケット式開発「電撃」入門
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- Eclipse 3.7 Indigo公開、e4、Orion、そしてクラウドへ
ユカイ、ツーカイ、カイハツ環境!(24) - Java EE 6/Tomcat 7/Gitに対応したEclipse 3.6
ユカイ、ツーカイ、カイハツ環境!(15) - Eclipse 3.5 Galileoの「実に面白い」新機能とは
ユカイ、ツーカイ、カイハツ環境!(6) - 今年も“かに座”リリース! Eclipse 3.4の新機能は?
すぐに日本語で使えるEclipse 3.4大特集(前編) - 日本人のためのEclipseプロジェクトを知ってますか?
すぐに日本語で使えるEclipse 3.4大特集(後編) - 徹底解剖!! Eclipse 3.3 Europaの“新世界”
CoolなEclipseプラグイン(特別編) - 【改訂版】Eclipseではじめるプログラミング