すでにC++での開発経験がある開発者にとってVisual C++は、新たな開発言語を習得することなく、.NET Frameworkアプリケーションを構築できるというメリットがある。しかしC++を使った開発は、あまり利便性がよくない。なぜならば、ほかの開発言語に比べて、.NET Frameworkのオブジェクトをしっかりとオブジェクトとして把握し、「->」演算子などを使ってオブジェクトが何を指しているのかを意識したプログラミングが必要になるためだ。さらにタイピング(記述)量も比較的増える。.NET Framework環境では、C++を使ったからといってアプリケーションの実行速度が速くなるような恩恵もない。
C++の既存のコードを流用したいということならばともかくとして、そうでなければ、素直にC#を使ったほうが、効率がよいというのが現状だ。
統合開発環境は、マイクロソフトのVisual Studio .NETだけではない。従来から開発環境を幅広く提供しているボーランドは、.NET Framework対応の開発環境として、「C# Builder for the Microsoft .NET Framework」と「Delphi 8 for the Microsoft .NET Framework」を提供している。
Delphi 8は、オブジェクトパスカル言語でプログラムを記述する統合環境だ。この言語に慣れている人は、そのまま開発言語で.NET Frameworkを使える。また、従来のDelphiでよく使われた「VCL」というライブラリの.NET Framework版が搭載されているので、過去の資産を活用して移行することができる。
|
その一方で、C# Builderは、開発言語としてVisual C#と同様に言語としてC#を使っているため、その違いがわかりにくいかも知れない。言語としてC#を使っている以上、プログラムの記述方法は、C# BuilderもVisual C#も大きな違いはない。
開発環境のユーザーインターフェイスも、Visual C#とよく似ている(画面5)。C# Builderでは、Windowsアプリケーションはもちろん、WebアプリケーションやWebサービスも構築できる。
このように、C# BuilderとVisual C#とは似ているが、付属する独自のコンポーネント群が異なり、また、エンタープライズ環境向けの対応も異なる。
C# Builderには、ComponentOneの.NET Framework対応コンポーネント群が付属している。付属しているコンポーネントには、グラフ表示するものやデータグリッドを拡張したもの、レポートを表示するものなどがある。コンポーネントは、Windowsアプリケーション用の他、Webアプリケーション(Webフォーム)用のものも提供されている(画面6)。
|
また、Professional Edition以上では、データベースへのアクセスを抽象化して、どのようなデータベースでも統一化された方法でアクセスできる「Borland Data Provider for ADO.NET」や、UMLと連携して開発する「Together」によるモデリング機能などがサポートされている(ただしProfessional Editionでは一部機能制限がある)。
さらに、Enterprise Edition以上では、J2EEアプリケーションとCORBAを使って互いに接続する「Janeva」が搭載され、J2EEアプリケーションとの連携がとりやすくなっている。そして最上位バージョンとなるArchtect版では、UMLでモデル設計しながらサーバーサイドで動作するコンポーネントを開発する「Enterprise Core Object」という機能も提供されている。
C# Builderは、見かけはVisual C#と似ているものの、.NET Frameworkに特化されず、J2EEなどの他の環境との連携がしやすいのが特徴だ。.NET Frameworkの枠にとらわれないエンタープライズ環境を想定するならば、C# Builderのほうが作りやすいだろう。逆に言えば、Personal Editionなど普及版では、C# BuilderでもVisual C#でも、ほぼ同じことができ、コンポーネントの付属の有無を除いては、あまり変わらないといえる。
なお、Delphi 8、C# Builderともに、非商用に限り無償でダウンロードできるnon-commercial Editionが用意されている(http://www.borland.com/products/downloads/)。このEditionは、同Personal Editionとほぼ同等な機能だが、ComponentOneのコンポーネントが付属していない。.NET Frameworkの学習という用途であれば、まず最初にnon-commercial Editionを使ってみるという選択肢があるだろう。
Copyright © ITmedia, Inc. All Rights Reserved.