■ Visual Basic 6.0 から Visual Basic .NET へ

  • よりパワフルに再設計された開発ツール
  • ターゲットは大規模エンタープライズシステム
  • オブジェクト指向のサポート
  • Framework の採用
  • ただし、「Visual Basic 6.0 との 100 % の互換性」 はない

Visual Basic 6.0 でも、n 階層の分散型システムを開発することができました。しかし、Visual Basic .NET は、より大規模で高性能なエンタープライズ向けのシステムや XML Web サービスを、簡単に作成できることを目的に開発されました。

そのため、Visual Basic 6.0 に対して単なる機能追加が行なわれただけでなく、製品の再設計が行なわれました。利用できるアーキテクチャ、文法、オブジェクトなど多くの点が変更されています。

まず、Visual Basic .NET ではオブジェクト指向が完全にサポートされるようになります。たとえば、

  • コードの継承
  • オーバーロード
  • オーバーライド
  • コンストラクタ/デストラクタ

が、利用可能になりました。Visual Basic 6.0 でも、COM で必須の 「インターフェイスの継承」 は可能です。しかし、他のオブジェクト指向言語にあるような 「コードの継承」 が Visual Basic にはない! といわれていましたが、Visual Basic .NET からはこの機能を利用できます。

そして、なんといっても Visual Basic 6.0 から Visual Basic .NET での最大の変更点は .NET Framework の採用です (第 2 章の 「.NET Framework」 参照)。

これにより、Windows フォーム、ASP.NET、ADO.NET などが利用できます。また、レガシーな機能が排除されたことや、共通言語ランタイム、共通の型システムを使用することにより、C# などの他の .NET 対応言語との相互利用性が高まりました。これで、Visual Basic から各種 API を利用するときに発生していた、Visual Basic と Visual C++ 間の型の違いによる苦労なども解決されます。

このようなさまざまな恩恵の代償として、「Visual Basic 6.0 との 100 % の互換性」 はなくなりました。

従来のコードは、そのままではビルドエラーになったり、ランタイムエラーになったりします。Visual Basic 6.0 から Visual Basic .NET への変更点を考慮し、修正が必要です。

ただ、この変更を自動で行なってくれるツールとして、アップグレードウィザード (後述) があります。このツールは、変更された多くの部分を自動的にアップグレードしてくれます。このツールでアップグレードした後に、自動的に変更されなかった部分にのみ修正を加えることで、移行に関する作業を大幅に軽減することができます。