この記事はNetBeansとRubyに関する連載記事の第二回目です。連載第一回目のRubyをサポートしたNetBeansの紹介記事はこちら(参考記事)で読むことが出来ます。
連載第二回目では、エディタの中または外で、開発者の生産性をあげるのに役立つRuby on Railsのツールとさまざまな追加機能に焦点を当てたいと思います。IDEは、Integrated Development Environmentの略です。つまり、あなたはRubyやRailを使う際に今後はNetBeansを使えば、もうコマンドラインを使う必要がないのです。
Ruby on Railsのサポート
NetBeansでRubyアプリケーションを作成するとき、あなたはいろいろなテンプレートから選んで作成することが出来ます。標準のRubyアプリケーションやRuby on Railsのアプリケーションを作ることも出来ます。
Railsプロジェクトを作る際、あなたはRubyかJRubyのどちらを使うか、どのドライバを使いたいか(JRubyの場合はJDBCを含む)を選びます。そして簡単にRailsの最新版に更新できます。一旦新しいプロジェクトのダイアログを作成するダイアログが表示されるのを確認したら、プロジェクトがデフォルトのディレクトリ構造で作成されます。Railsがデフォルトのディレクトリ構造で作成されるということは、Railsの大きな長所です。Railsのアプリケーションの構造はどれも同じなので、他の誰かが作ったアプリケーションに携わるときでも簡単にそれを理解出来ます。NetBeansのプロジェクトエクスプローラを使うことによってファイルの概要を把握出来ます。また異なるファイルへ簡単に移動出来ます。:
全てのRailsジェネレータをIDEで使うことも出来ます。プロジェクトのところで右クリックすると、ジェネレータを選ぶことができ、パラメータを代入してジェネレータを実行出来ます。そして出力ウィンドウにジェネレータの出力結果を見ることが出来ます。
アプリケーションを開発している時に、コード補完機能、リファクタリング機能、クィックフィクス、そして他の機能をエディタで利用出来ます。(エディタ機能に関してもっと多くのことを学びたい場合は、連載の第一回目(参考記事)をご覧ください。)アプリケーションを実行する準備が出来ていれば、設定をしなくても単に実行ボタンを押すだけで、アプリケーションを実行することが出来ます。NetBeansはWebrickサーバをバンドルしています。そしてWebrickを使用してアプリケーションを実行することが出来ます。アプリケーションのデバッグを選択した場合、ウェブブラウザのウィンドウが自動的に開き、IDEはWebrickサーバをデバッグモードで実行します。また当然ですが簡単にWebrickをMongrelへ切り替えることが出来ます。
RakeもIDEに統合されているので、プロジェクト上でRakeを実行出来ます。
また簡単にRakeターゲットをデバッグ出来ます。マイグレーションスクリプトも実行出来ます。IDEでRailsコンソールを使って作業出来ます。専用のダイアログを使用して異なるRailsプラグインをインストールすることも可能です。他のツールを利用してRailsアプリケーションを開発出来ますが、幸運にもNetBeansを使ってRailsアプリケーションを開発するという方法を得たのです。
エディタ機能
私は本連載の第一回目で、すでに編集機能(コード補完やリファクタリング)に関して議論しました。ほとんどのRuby開発者がNetBeansに関して好意を寄せている機能はエディタ機能だと私は思います。常に役立つちいさくて異なる機能が沢山あります。例えば、新しいメソッドを作るとend宣言が自動的に補完され、カーソルがdefとendの間に移動します。ファイル上で使われているある変数に注目し、それがどこで使われているかを確認することが出来ます。
変数の名前を変えたいとき、単にCtrl-Rを押してファイルにおけるすべての変数名を変更出来ます。
コード上の簡単な説明は、素晴らしいシンタックスのカラーリング機能のおかげで、RubyDocs上でも有効です。タイプした際、エディタ上にエラーがある場合は、その部分に下線がひかれます。そしてNetBeansはどの変数が使われていないかということを開発者に伝えてくれます。だから開発者であるあなたはそれら使われてない変数を取り除くこことが出来ます。
CTRLキーを押しながら、マウスのカーソルを、クラス、メソッド、変数に合わせると、それを宣言している箇所に移動出来ます。またマウスで選択した要素について簡単な情報を取得出来ます。
コードテンプレートを使用することも出来ます。多くのコードテンプレートが、あらかじめて定義されていますが、簡単にオリジナルのテンプレートを作成することも出来ます。テンプレートで、コードテンプレートを元に戻した後のカーソル位置を特定出来ます。そしていろいろな変数をコードテンプレートに入れておくことも出来ます。従ってあるAPIを繰り返し使う場合、コードテンプレートは大変役立ちます。
他にも沢山の編集機能がありますので、http://wiki.netbeans.org/wiki/view/RubyEditing (英語) を参考にしてみてください。
ジェムマネージャ
下のスクリーンショットをご覧頂くと分かりますが、Gemマネージャ(ToolsメニューよりRuby Gemsを選択)を使用して、新しいバージョンのgemsをインストールしたり、インストール済みのgemsを閲覧したり、インストール済みのgemsを更新したり出来ます。Gem Managerのユーザインターフェースは、NetBeansプラグインマネージャやRailsプラグインマネージャととても似ているので、Gem Managerにもすぐに慣れることでしょう。Rubyのリポジトリには、利用可能なgemsが沢山あります。そして、ライブラリを取得したいときに、全文検索はとても役立つことでしょう。
Rubyのオプション機能
前にも触れましたが、ネイティブなRubyとJRubyを切り替えることが出来ます。IDE はデフォルトでJRubyを使用していますが、理由はJRubyがバンドルされているからです。しかしIDEには既存のRubyインストールディレクトリを設定する箇所があるので、JRubyではなく既存のRubyを使うことも出来ます。どのOSを使っていても、既存のRubyインストールディレクトリの場所を参照出来ます。
あなたはまた同様にクラシック デバッガーとファスト デバッガーをオプションダイアログを使って切り替えることが出来ます。JRubyの場合は、クラシックデバッガーしか使えません。クラシックデバッガーは、ファストデバッガーと比較して遅いですが、全ての環境で動きます。ネイティブなRuby環境では、ファスト デバッガーを使うことが出来ます。(IDEにダウンロードして簡単にインストール出来ます)ファストデバッガーは、Rubyの推奨デバッガーです。上記以外にもOptionタブがもう二つあります。formattingタブでは、エディタのフォーマットの設定を行えます。またhintsタブでは、エディタ上に表示されるヒントが書かれたバルーンの外観を設定できます。
Unit Testing
ユニットテスト機能が非常によく統合されています。例えば新しいモデルクラスを作った場合、ユニットテストが自動的に作成されます。これはRuby on Railsの機能です。テストは重要なので省略することは出来ないという哲学がRuby on Railsにはあります。エディタからテストを実行出来ます。またテストクラスへ移動することも出来ます。
あなたがテストに凝っているなら、ZenTest Ruby Gemをインストールすることが出来ます。そしてプロジェクトのコンテキストメニューに、AutoTestメニューが表示されるでしょう。AutoTestを実行したら、プロジェクト上のAutoTestが開始されます。そしてそれはファイルが修正されたらユニットテストを自動的に実行します。AutoTestは、多くの場合、どのユニットテストを実行すべきか分かります。これは特にRailsプロジェクトにとっては正しいです。もし正しくない場合は、全てのユニットテストを実行します。.
Using the console
たとえ我々がIDEに出来るだけ多くの機能を詰め込み、IDEで出来ることを沢山増やしたとしても、依然としてコンソールにアクセスしたいという気持ちはあるかもしれません。あなたがインタラクティブにRubyのAPIを試したい。そんな時にコンソールは役立ちます。WindowメニューよりOtherのRuby Shell(IRB)よりRubyのシェルを開くことが出来ます。コンソールが、IDEの下部に表示され、Rubyのインタラクティブな言語機能をフルに利用出来ます。
より多くの情報を得るには
http://wiki.netbeans.info/wiki/view/Ruby (英語) には、NetBeansのRubyサポートに関するさらなる情報が掲載されています。
http://www.netbeans.org/kb/60/ruby/index.html (英語) の主なRubドキュメントページより、いろいろなデモとチュートリアルが入手出来ます。
最後に以下のURLより無料でNetBeans IDEをダウンロードすることが出来ます。http://www.netbeans.org/community/releases/60/index.html (英語) RubyのみをサポートしたIDEや、RubyをサポートしたJava IDEを選択してインストールすることも出来ます。同様にJavaのみのIDEにRubyサポートを追加することも可能です。
この連載の最終回で、我々はさまざまな実験的なプラグインをインストールして取得可能な追加機能について議論します。またコミュニティに関連するトピックを取り上げます。たとえばどのようにしてプロジェクトやその将来の計画に関わることが出来るかという件について議論します。一方、必ずNetBeansでRubyサポート試してみてください。もしあなたが頻繁にRubyで開発しているなら、NetBeansはあなたが探し求めていたIDEだということが分かるかもしれません。
原文はこちらです:http://www.infoq.com/articles/netbeans-rubyide2
(このArticleは2007年12月5日に原文が掲載されました)