ホーム > X-Plus > XML Square >  デベロッパーズコーナー  >  JavaプログラミングとXML

この記事を送る はてなブックマークに追加する BuzzurlにブックマークBuzzurlにブックマーク Yahoo!ブックマークに登録
テキストリンクコードを取得する

デベロッパーズコーナー:Javaプログラミングを極める「Visual J#」(1)

2004年01月20日作成 

Javaプログラミングを極める
第9回:Visual J# を使ってみる

(株)日本ユニテック
太田 純

<この記事はDigital Xpress 2002 Vol.15(6-7月号)に掲載されたものです>

Microsoft 社は、.NET Framework 用のJava 言語による開発ツールとしてVisual J# をWeb 上で配布しており、Visual Studio .NET 2003 にも含められています。今回は普段とは少し趣向を変え、Visual J# について調べてみましょう。

Microsof社は2002年3月に.NET Framework1.0およびVisual Studio .NET をリリースし、Web サービスを始めとする、これからのアプリケーション開発および実行環境としてアピールしてきました。

2002 年9 月に「Visual J#」がWeb 上で無償ダウンロードできる開発ツールとして提供されました。これは、Visual Studio .NET へアドオンとして組み込むことによりJava 言語で.NET Framework に対応したアプリケーションやWeb サービスを構築できるツールです。Visual Studio .NET 2003 には、VB.NET、Visual C#、Visual C++ に加えて、Visual J# が含められてリリースされます*1

Java 言語と.NET Framework の両方での開発を求められる開発者にとっては、C# などの新しい言語を覚えなくても.NET Framework 対応アプリケーションを開発できるならば朗報だといえるでしょう。

Sun Microsystems 社との訴訟に関すること

2003 年1 月21 日、連邦地裁はMicrosoft 社に対してSun Microsystems 社の最新のJava Runtime Environment (JRE) をWindows やInternet Explorer に組み込むことや、Microsoft VM を単独で配布することを中止するよう求める仮処分命令を下しました。この裁判の背景について説明し始めると紙面が足りなくなりますが、簡単にいえばMicrosoft 社が独自にJava を拡張してWindows マシンのみを対象に機能の改善を図ろうとしたため、この行為はライセンス契約に違反しているとしてSun Microsystems 社が訴えていたわけです。Sun Microsystems 社は、Java プラットフォームをハードウェアやOS に依存しない環境として普及させたかったからです。

執筆時点では、この裁判に関わるすべてのことが確定しているわけではないものの、Microsoft社は2001年1月23日にSun Microsystems社との間で成立した和解契約に従ってMicrosoft VM を段階的に廃止する手続きを行っています。すでに、最新のMicrosoft VM のWeb からの提供は停止しており、2004 年1 月以降は、Microsoft VM にたとえセキュリティ上の欠陥が発見されたとしても新しい修正バージョンは提供されません。

こうした状況の中で作られたのがVisual J# なのです。その大きな目的の一つは、Microsoft VM 上で動作することを意図して記述されたJava コードを、Microsoft VM なしで動作させることです。

Visual J# で何ができ、何ができないのか

以上の点から分かるとおり、Visual J# はあくまでも.NET Framework 上で動作するアプリケーションを作成するためのものであって、Java VM 上では動作しません。したがって、jar ファイルやclass ファイルの形で提供される使い慣れたJava ライブラリがあったとしても、それをそのままVisual J# で利用することはできないのです。

Visual J# のドキュメントには、Visual J# の仕様として以下のことが記述されています。

● JDK 1.1.4 の多くのクラス(すべてではない)およびJDK 1.2 (J2SE 1.2)のうちjava.util パッケージに含まれるクラスの多くがサポートされる。

● 過去にVisual J++ と共に出荷されたWindows Foundation Classes (WFC)や、その他のcom.ms.* パッケージはサポートされる

● class ファイルはサポートされない。ただし、JDK 1.1.4 の範囲内のクラスを使うライブラリに関しては、バイナリ移行ツールを使用して、.NET Framework 用のDLL に変換することも可能

●アプレットはサポートされない。ただし、Microsoft は2003 年中にアプレットをサポートすることを表明している

● JDBC のクラス群を含むjava.sql パッケージはサポートされているが、DriverManager クラスを利用してConnection を取得することはできない

● Java Native Interface (JNI)、Raw Native Interface (RNI)、およびRemote Method Invocation (RMI)はサポートされない

● Security Manager 関連の多くのメソッドはサポートされない

これらの点を踏まえて、どのようなプログラムをVisual J# で動作させられるのか、実際に記述して見てみましょう。

以下の説明では、Visual Studio .NET 2003 に含まれるVisual J# を使用して検証を行いました。

>>続いて「Visual J# のプロジェクト作成」をしてみましょう。




関連サービス

IT技術およびIT製品の可用性調査・検証業務



この記事と関連の高い記事

関連キーワード:Java


関連キーワード:Visual J#


関連キーワード:プログラミング




ページトップへ戻る