Microsoft Visual J++

Visual J++について



Visual J++(ビジュアル・ジェイ・プラス・プラス)は、1996年にマイクロソフトによって開発されたJavaの実装の一つです。この言語は、Javaの基本構文やキーワードをそのまま使用しつつ、特有の拡張機能も含まれていました。Visual J++は、Visual Studio 6.0までのバージョンに含まれ、2004年1月にはその開発が終了しました。Visual Studio .NET以降、この製品の多くの機能は、J#やC#に置き換えられました。

互換性と特徴



Microsoft Visual J++ 6.0では、GUIライブラリとしてWindows Foundation Classes (WFC) を利用し、ActiveXコントロールを使用したRapid Application Development (RAD)が可能でした。また、独自のネイティブインターフェース技術であるRaw Native Interface (RNI) やJ/Direct、さらにJava/COM統合に対応していました。しかし、それにより生成されたアプリケーションは、マイクロソフトJava仮想マシン上でしか動かすことができませんでした。

Visual J++はJava言語仕様に準拠していましたが、サン・マイクロシステムズJava RMIやJNIなど、公式のJava実装に特有の機能は採用されていません。また、サンでは提供されていない、イベント処理に関連した独自の機能も実装されていました。これにより、J++のアプリケーションは、オペレーティングシステムの機能にアクセスする際の手段が異なり、J/Directというフレームワークを通じてWindowsのAPIを直接使用することが可能となりました。このため、J++アプリはサンのJavaアプリよりも効率良く外部機能にアクセスできました。

ただし、その結果として、サンのJDKを介さない標準的なJavaアプリケーションとは互換性が失われたため、J++で作成したアプリはサンのJavaで動作しない場合がありました。他のオープンソースのJVMであるKaffeプロジェクトでは、J++アプリをサポートする拡張機能が開発されましたが、広く利用されることはありませんでした。これらのアプリケーションは又、Visual J++で事前にコンパイルされる必要がありました。

Visual J++はActiveXをサポートし、WFC(Windows Foundation Classes)はWindowsプラットフォームAPIやDHTMLオブジェクトモデルを統一して提供するクラスライブラリでした。これにより、Windows上でJavaアプリケーションのGUIを構築する際に便利でした。

サン・マイクロシステムズとの訴訟



サン・マイクロシステムズは、当初Javaマイクロソフトにライセンス提供していましたが、後に商標権侵害に関してマイクロソフトを訴えました。ここで問題となったのは、Javaブランドの使用に関するサンの規定で、「互換性を求める」ものでした。サンは、マイクロソフトが意図的にJavaの規格から逸脱し、その進化を妨げていると主張しました。特に、MSJVM(Microsoft Java Virtual Machine)がサンのコンプライアンステストに合格しなかったことが大きな要因とされました。

2004年には両社は和解に至り、合意内容ではマイクロソフトJavaの機能以上のものをJ++に組み込まないこととなり、J++はJavaバージョン1.1.4の機能セットで最終化されました。こうして、J++の将来のアップデートは実質的に停止し、セキュリティホールの修正を除いて新しい機能は導入されなくなりました。マイクロソフトはその後、2007年末にMSJVMのサポートを完全に終了しました。

Visual J++統合開発環境と後継技術



Visual J++は、J++の統合開発環境(IDE)でもあり、プログラマーがWin32APIを効果的に使用するための多様なツールを提供しました。このIDEは今では配布されていませんが、当時はMicrosoft Visual Studio製品群の大切な一部とされていました。

Visual J#という後継プログラミング言語も開発され、これはJavaに似た構文を持ちつつ、.NET Framework内で動作することを目的としていました。しかし、最終的にはC#が.NETの主要言語となり、Javaの影響を受けて設計された点でも共通していました。J#を含むVisual Studio 2005が最後のリリースとなりました。

Visual J++の技術は、最終的にはMicrosoft .NET FrameworkやJ#に取り込まれ、その影響はプログラミング言語の進化に脈々と受け継がれています。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。