本格派エンジニアの工具箱

第1回 オープンソースの統合開発環境「NetBeans IDE」

この記事を読むのに必要な時間:およそ 2 分

NetBeans IDEとは

NetBeans IDE(以下,NetBeans)はJavaで作成されたオープンソースの統合開発環境(IDE)です。もともとはJavaアプリケーション用の開発環境として作られ,Sun Microsystems(2010年1月にOracleが買収)を中心としたオープンソースコミュニティによって開発が進められてきました。現在はJava以外にもC++やRuby,PHP,JavaScriptなどのさまざまな言語をサポートしている他,Web/Java EEアプリケーションを動作させるために必要なアプリケーションサーバもバンドルされており,多様なニーズに対応した開発環境として広く利用されています。

公式にはWindows 7/Vista/XP,Ubunts,Soralis,Mac OS XといったOS上での動作がサポートされていますが,NetBeasn自身はJavaで記述されているため,Java VMを搭載した上記以外のプラットフォームでの動作も確認されています。NetBenasのコードは一部の機能を除いてOSI承認のオープンソースライセンスであるCDDL(Common Development and Distribution License)とGPLv2(GNU General Public License v2)のデュアルライセンスに基づいて公開されており,無料で利用することができます。

NetBeamsの主な機能

本稿では,まずNetBeansで提供される主要な機能を紹介します。

プロジェクト管理機能

NetBeansによる開発は,アプリケーションごとに個別のプロジェクトを作成して行います。目的とするアプリケーションの種類によって,ディレクトリやファイルの構成,必要な設定ファイル,利用するエディタなどが異なりますが,NetBeansではウィザード形式で簡単に雛形を作成することができるため,自分で細かな設定を行う必要はありません図1)。ライブラリの依存関係の解決も,プロジェクト管理機能によって簡単に行うことができます。

図1 プロジェクトウィザードによって,対象アプリケーションの種類ごとに使用するプロジェクトを選択することができる

図1 プロジェクトウィザードによって,対象アプリケーションの種類ごとに使用するプロジェクトを選択することができる

またビルドツールであるApache AntおよびApache Mavenが統合されており,コンパイルからビルド,実行までのプロセスをワンクリックで行うことができるようになっています。たとえばWebアプリケーションであればWebブラウザを起動してプロジェクトのトップページを表示することまで自動で行ってくれるため,実行までの煩わしい手続きを簡略化できます。

高機能なエディタ

NetBeansではさまざまな言語や設定ファイルのコーディングに最適化された高機能なエディタが用意されています。さまざまなファイルタイプで利用できる主な機能としては次のようなものが挙げられます。

  • キーワードハイライト
  • 入力候補の表示
  • 自動補完
  • ブロックごとの折り畳み
  • 雛形の生成
  • ヒントの表示
  • 各種キーボードショートカット
  • ショートカットやハイパーリンクによる目的のコードへのジャンプ

上記の他に,各エディタごとに言語特有の機能も用意されています。たとえばJavaエディタには,アクセサメソッドやオーバーライドメソッドを自動生成するウィザードが付属します。また,親クラスのメソッドにジャンプするためのマーカーの表示や,変数やメソッドにカーソルを当てた際にそれを利用している箇所を強調表示するなど,コーディング効率を向上させるさまざまな機能が提供されています図2)。

図2 Javaエディタによるコーディングの例。ハイライトやコードヒントなどが利用できる

図2 Javaエディタによるコーディングの例。ハイライトやコードヒントなどが利用できる

ビジュアルエディタ

視覚的にコーディングを行うことができるビジュアルなエディタを備えていることも,NetBeansを利用する大きなメリットのひとつです。たとえば,HTMLやXML,SQL,JSPなどの各種フレームワークでは,特定コードの雛形を挿入してくれるパレット(コードスニペット)を備えています図3)。

図3 HTML用のパレット。アイテムをエディタ内にドラッグ&ドロップするとコードの雛形が挿入される

図3 HTML用のパレット。アイテムをエディタ内にドラッグ&ドロップするとコードの雛形が挿入される

また,Javaのデスクトップアプリケーション開発ではMatisseと呼ばれる高機能なGUIエディタを利用することができます。MatisseではGUI部品を視覚的に配置してデザインすることができます図4)。Matisseで行ったGUIデザインはリアルタイムにコードに反映されます。これによってSwing/AWTを利用するアプリケーションの開発効率が飛躍的に向上します。

図4 JavaのGUIエディタ「Matisse」。右のパレットからエディタにコンポーネントをドラッグ&ドロップし,マウス操作でレイアウトを行える

図4 JavaのGUIエディタ「Matisse」。右のパレットからエディタにコンポーネントをドラッグ&ドロップし,マウス操作でレイアウトを行える

著者プロフィール

杉山貴章(すぎやまたかあき)

ONGS Inc.所属のプログラマ兼テクニカルライター。雑誌,書籍,Webメディアで多数の著作をもつ。

著書

コメント

コメントの記入