開発者にやさしいIDE, NetBeansを使ってみよう!
   

第一回 開発者にやさしいIDE, NetBeansを使ってみよう!



Java アプリケーションの開発も、近頃では、スピードの短縮と共同作業の重要 性から IDE を用いることが必須な状況になっています。中でも、無償で使える IDE ツールは非常に高い人気を獲得しています。 オープンソースの Java IDE である NetBeans は、近頃では劇的な速度の改善 と、GUI ツールやプロファイル機能の充実度から注目度が高まり、北米では20% 近いシェアを獲得する状況になってきていると言われています。 日本では知名度がまだ低い NetBeans ですが、今後は、北米に追随して、ユーザ 数が増えることが予想されています。SDC では、インストールのガイドから、適 切な日本語情報の所在を示す index 的な情報を含め、NetBeans の一通りの使用 方法を解説する連載を今月よりはじめることにいたしました。 本連載、そしてそこで参照されている良質のチュートリアルをご覧いただけれ ば、話題のJava 開発ツール、NetBeans の使用方法が一通りわかるようになるこ とを目標にしています。 本連載は、エキスパートのリレー形式で行う予定です。今月のイントロダクショ ンは軽妙な文体で好評の清水美紀氏の担当です。

なぜIDEなのか

「IDEだと考える力が育たない」...本当でしょうか。それを突き詰めていけば論理回路から組まないと本当の学習にはならないことになってしまいます。考えようとしない人はテキスト打ちも漫然としかしないでしょうし、考えようとする人はIDEでもよりよいプログラムを目指します。道具のせいではありません。

それよりもIDEは「やる気」をもたらしてくれます。「さあXML文書からデータを読み込んでデータベースに接続するWebアプリケーションを作ってみよう」と夜の10時ごろに言われて、悪役タッグのようなメモ帳とDOS窓しかない状態であなたはとりかかる気になれるでしょうか。しかしそこにIDE,それもNetBeansがあれば、サーバもあるデータベースもある、XMLのウィザードもWebアプリケーションのテンプレートもある、「じゃあハローワールド的なものでもちょっと作って見ようか」という気になれるでしょう。

同様、IDEならアイディアをすぐ形にできます。「それはStrutsで書いたほうがいいのかな、JSFのほうがいいのかな」...仕様書を引っ張り出してあれこれ議論するより、同じ目的のアプリケーションをその場で作って比べてみればよいのです。世の中、タイプミスをしない慎重で正確なプログラマも確かに必要です。しかし、thisをshitと打ってしまう癖が抜けなくてもその日のうちになんらかのタタキ台でも構築できる人材が増えるのは決して悪いことではないでしょう。

 

なぜNetBeansなのか

NetBeansはもともとチェコの学生たちが立ち上げたベンチャー企業の商用アプリケーションでした。それをSun Microsystemsが買収し、かつてのForteやSun One製品のベースとなる一方、コミュニティユーザ向けの無償版としても配布されました。それが今、Sunの支援のもとオープンソース化され、NetBeans.ORGというコミュニティにより開発・管理されています。

このような歴史を持っており、決してどこかのIDEの大ブレイクにあやかった二匹目のドジョウなどではないのです。むしろ、先見性がありすぎてまだハードウェアのスペックが追いつかないころに先進的で高度な機能を盛り込みすぎてしまい、世紀末のあたりに「IDEは重い、落ちる」という印象を一部のユーザに与えてしまった宿業はあるかも知れません。それは過去のこととして(サラリ)、このNetBeansどこがよいのか、その特長を見ていきましょう。

IDEというとまずコードアシスト、テンプレート、それからマウス操作でのコンパイルや実行、というような機能を考えるかも知れません。しかしここでは、別の観点で紹介したいと思います。それは「やさしさ」...

(1)OS環境にやさしい!

 IDEとは「統合開発環境」です。この環境が導入前のOS環境やユーザデータ環境に悪影響を与えたり、それらをIDEに合わせて変えなければいけないようではまさに厄介者です。 NetBeansの場合、インストールの前に必要なことは、

先にJDKをインストールしておく

ということだけです。 JAVA_HOMEだPATHだという環境設定は必要ありません。NetBeansのインストーラをダブルクリックすれば、インストールウィザードが立ち上がって、適切なJDKを探し出して「どれにしますか」ときいてきます。


図1ダブルクリックするだけのNetBeansインストーラ



図2インストーラがJavaを自動検出する

NetBeansにはTomcatはあたりまえのようについてきます。さらに、NetBeansの豪華版として「Sun Java Application Serverバンドル版」というものがあります。これはまだ日本語版は出ていませんが、いずれ出るでしょう。これにはEJBやJAX-RPC, JSFなどにあたりまえのように対応するSun Java Application Serverと、Apache Derbyというデータベースまでついてきます。コンポーネントの規模からするとどっちがどっちをバンドルしているのか再考の余地があるほどです。ですから、「NetBeansで使うために何かを事前・事後にインストールしなければならない」ということは無きに等しいのです。

最悪削除するときは、アンインストーラを利用できます。しかし、後述のようにNetBeansは同じバージョンでも違うバージョンでもいくつでも別にインストールできます。ですから、ハードディスクの容量が許す限り、使わなければ放っておけばよいのです。アンインストール・インストールを繰り返してシステムを腐らせることはありません。





図3 uninstaller.exeをダブルクリックでアンインストール

(2)ユーザデータ環境にやさしい!

NetBeansでも、他のIDE同様、アプリケーションの開発は「プロジェクト」を作成して行います。 しかし、「プロジェクトフォルダ」は必ずしも「作業フォルダ」でなくてもよいのです。 いままで自分の好きなフォルダでアプリケーションの開発をしていた、これをNetBeansで開発するためには、NetBeansのプロジェクトフォルダにソースファイルを移動しなければならない...そんなことは、ありません。

NetBeansでは「既存のソースを利用するプロジェクト」も作成することができます。このとき、プロジェクトの設定ファイルや中間生成物を置く「プロジェクトフォルダ」は、「ソースフォルダ」と別の場所に作成されます。汚しません、茶々を入れません。

その例を示しましょう。それまでTomcatをC:\Tomcat5.5にインストールして、そのwebappフォルダにmystrutsというアプリケーションフォルダを置いて開発していたとします。そこにNetBeansを導入します。この開発中のフォルダの運命は?

全く問題ありません。まず、C:\Tomcat5.5にインストールしてあるTomcatは、NetBeansに「追加」して、起動・停止もちろん配備を管理することができます。



  
図4 (a)外部のTomcatをNetBeansに追加 (b)右クリックで起動や停止を管理

C:\Tomcat5.5\webapp\mystrutsフォルダは、以下のようにして組み込みます。NetBeansの新規プロジェクトの作成で、「既存のソースを使用するWebアプリケーション」を選びます。


図4 既存のソースを使用するWebアプリケーション


ソースのフォルダをC:\Tomcat5.5\webapp\mystrutsに指定し、一方プロジェクトフォルダのほうは遠く離れた自分の好きな場所に作ります。さらに、実行するサーバをスタンドアロンのTomcat5.5にすれば、今までの開発環境を全く変えることなく、NetBeansで編集できるというわけです。



図5ソースの場所やTomcatを既存のものに

(3)バージョンアップにやさしい!

今までNetBeans4を快適に使っていたが、今度5が出るという。導入すべきかどうか...悩む必要はありません。インストールする場所を別に指定すれば、以前のバージョンは残るし、続けて使用できます。ユーザの設定フォルダも上書きされることなく、バージョンごとに別にインストールされます。プロジェクトフォルダはさすがに別にするべきですが、ソースは共有できます。


図6 色々なバージョンのNetBeansを使い分ける





図7 設定フォルダもバージョンごとに別インストールされる

同じバージョンでさえも、たとえば英語版、日本語版、アプリケーションサーババンドル版などを、別々の名前でインストールして使い分ければ便利でしょう。
 
図8(a) 同じバージョンでも違う名前でインストール (b)別々に立ち上げられる

何か設定を間違えてNetBeansがおかしくなった!と思っても、ほとんどの設定は図7の設定フォルダにあります。そのフォルダを削除(あるいは名前を変える)すれば、もう一度NetBeansを立ち上げたとき、デフォルトの設定で自動的に設定フォルダは新規作成されます。

(4)ユーザの疑問や要望にやさしい!

最後にもうひとつのやさしさです。NetBeansのことでわからないとき、要望があるとき、どこに行けばよいのでしょうか?迷うことはありません。日本ならNetBeans.JPのサイトです。

http://www.netbeans.jp

このNetBeans.JPは本家NetBeans.ORGと太いパイプでつながっています。熟練ユーザのアドバイスが得られるだけでなく、メーリングリストにはSunの人も参加しています。ですからNetBeansだけでなくSun JDKについても、質問や意見は本家NetBeans.ORG,それを支援するSunに直接届くのです。 本家NetBeans.ORGのメーリングリストは英語ですが、尻込みすることはありません。こちらにもSunの人がゴロゴロいます。正直な話彼らにとっては半分商売ですから、日本人から見ても「そんなこと質問すんなヨ」と思うような初歩的な質問、「その英語どういう意味?」というような質問でさえ親切に答えてくれます。ときにはあのCraig McClanahanさんまでが参加したり(実話)、Javaのカリスマのあの人も見てくれているかも知れません。

本連載ではこのような「開発者にやさしいIDE」NetBeansの使い方について、NetBeansを愛してやまないユーザたちが交代で紹介を行います。ユーザによっていろいろな観点があると思います。恐れ多くもそのイントロダクションを仰せつかったワタクシは、NetBeansのちょっと変わった使い方「へぇこんなこともできるんだ」という使い方を取り上げて行きたいと思っています。ではお楽しみに。