日経ソフトウエアから,日経Linuxに異動して半年になる。日経ソフトウエアでは主にWindows環境の開発ツールを取り上げ,日経Linuxでは,当然のことながらLinux環境の開発ツールに注目している。

 Linux関連の情報を追い,情報提供をする仕事はなかなか面白い。とは言うものの,実は,異動してしまって残念だったな,と思うことが一つある。それは,私が日経ソフトウエアを離れた直後に,Visual Studio.NETの出荷が始まったことである。

 デスクトップ・アプリケーションはともかく,Webアプリケーションでは,これまでは開発にJavaを用いることが一般的だっただろう。しかし,.NETの登場で,Webアプリケーションの開発に何を使うのか,Javaか.NETか,という議論が非常に面白いテーマになってきている。でも,私は今,この議論からちょっと“かやの外”なのだ。

Javaか.NETか,の議論は面白い

 Javaの開発環境は,JDK(Java Development Kit,[用語解説])にせよボーランドのJBuilderのような統合開発環境にせよ,WindowsとLinuxどちらの上でも動作するので問題はない。だが,2002年3月に登場したVisual Studio.NETはLinux上では動作しない。

 筆者も,Visual Studio.NET上でVisual C#を使っていたが,確かにJavaの統合開発環境にはない良さがある。例えば,Webフォームなどを用いることで,簡単にロジックと表現を分離でき,コードの管理が容易になること,カレンダー・コンポーネントなど,そのままWebアプリケーションに利用できるコンポーネントが標準でそろっていることなどだ。

 Javaの統合開発ツールの中にも,このような機能を備えている製品はある。しかし,JBuilderや米Sun Microsystems社のSunONE(Forte)など,利用者が多いツールでは実現できていない。

 Javaや.NETなど,どの基盤技術を開発に使うのかは,顧客の要望やシステムの規模,他システムとの接続の有無,これまでの開発のノウハウなど,様々な要因を考慮して決まる。開発ツールが使いやすいからその開発言語を採用するというように単純に決められるものではないし,適用分野を考えずに一概にどちらの技術が優れている,と結論を出せるものでもない。

 熟練した開発者にとっては,開発ツールがVisual Studio.NETだろうが,コンポーネントが多かろうが,開発効率に差は出ないかもしれない。ただ,Visual Studio.NETを使えば,Javaの統合開発環境などを使った場合に比べて,例えばWeb技術を使った社内システム(イントラネット)など,開発効率が上がる応用分野もけっこうありそうだ,と筆者は考えている。

 いずれにしても,Javaと.NETを学んで技術的な比較をしたり,開発スタイルの違いを調べて今後の開発にどちらを使うか,どう棲み分けるか,を研究するのは,技術者にとって非常に興味深いテーマだと思う。

 Linux上の開発では,テキスト・エディタと組み合わせて利用するC/C++が全盛で,Perl,PHPなどのスクリプト言語,それにJavaが加わるという状況だ。Javaか,それとも.NETか,という非常に面白い状況が目の前にあるのに,Linuxでは.NETという選択肢がないのが残念に思える。

 Linuxに.NETを移植しようとしているMonoプロジェクトの進展を待つのもいいが,米Microsoftが自らLinux上の.NET開発環境に手を出すと,もっと面白くなるんだけどなあ。

(畑 陽一郎=日経Linux)