特集:第2回 スタートアップ.NET――開発ソフトの現状と目的別使い方(後編)dev .NET(3/3 ページ)

» 2004年08月02日 11時36分 公開
[大澤文孝,ITmedia]
前のページへ 1|2|3       

フリーの開発環境が増えてきた

 開発環境として、フリーの開発環境を選ぶという選択肢もある。フリーの統合開発環境は、たくさんあるが、よく使われているのは、「Web Matrix」(関連レビュー記事)と「SharpDevelop」だ。

マイクロソフトが提供するフリーな開発環境「Web Matrix」

 WebアプリケーションやWebサービスを開発するのであれば、マイクロソフトが提供するWeb Matrixを使うのもよい。Web Matrixは、WebアプリケーションおよびWebサービスに特化した統合開発環境だ。実行画面は、画面7のように、Visual Studio .NETとよく似ている。対応する開発言語は、VB.NET、C#、J#の3種類。

画面7■Web Matrixによる開発

 しかし、Web Matrixで生成されるコードは、Visual Studio .NETで作られるものと大きく異なる。Visual Studio .NETの場合には、「ページを構成する部分」と「コード」を別ファイルで構成する「コードビハインド」と呼ばれる手法だ。それに対し、Web Matrixでは、ひとつのファイルにページもコードも記述してしまう。

 そのため、あとでユーザーインタフェースを変更する、またはプログラムの共通部分をひとつのクラスにまとめるなど、オブジェクト指向的な開発要素を採り入れたい場合には適していない。また、コード入力を支援するIntelli Sence機能や、コードの入力時点でのエラー指摘、デバッグ機能も備えない。

 ただし、Web Matrixでは、IISをインストールしていない環境でもWebアプリケーションやWebサービス開発ができるなどと、手軽な面もあるが機能面では乏しく、どちらかというと、手始めに使うアプリケーション開発の初心者向けツールという位置付けだ。このため、小規模なWebアプリケーションやASP.NETの学習にはよいが、実用的なWebアプリケーションの開発には、あまり向かないと思われる。

Win32アプリケーション開発も網羅する「SharpDevelop」

 Web開発だけでなく、Windowsアプリケーションも開発したいということであれば、SharpDevelop(http://sharpdevelop-jp.sourceforge.jp/)は、適した選択肢だろう。

 SharpDevelopは、GPLライセンスによるオープンソースであり、自身がC#で記述されている。また、Webアプリケーション以外のほとんどのアプリケーションを構築できるのだ。対応言語は、C++、C#、VB.NETとなっている(画面8)。さらに、画面構成は、Visual C#やBorland C#などと、ほぼ同等だ(画面9)。


SharpDevelopでは、MSILアセンブラを使っての開発もできる。また、セットアップアプリケーションも作れるが、テキストとして、MSIファイルのセットアップ情報を記述していくだけであり、GUIサポートはいっさい含まれない。
画面8■SharpDevelopで開発できるプロジェクト
画面9■SharpDevelopによる開発

 なお、SharpDevelopの原稿執筆時点でのバージョンは1.0RC2であり、まだ正式版としての公開ではない。しかし概ね安定した動作をしているようだ。SharpDevelopでは、GUIでのフォームを使った開発はもちろん、コードを記述するウィンドウにおいて、入力を補完するIntelli Sence機能が搭載されるなど、コードエディタとしての機能も高い。

 SharpDevelopは英語版ではあるが、.NET Framework SDKの言語情報を見るため、日本語版の.NET Framework SDK(.NET Framework Language Pack)がインストールされていれば、IntelliSenceのコメントや.NET Frameworkのクラスライブラリのドキュメントなどは、日本語で表示される。

 唯一残念なのは、SharpDevelopには、現在、デバッガが付属していないという点だ。デバッグしたい場合には、.NET Framework SDKに付属のCLR Debuggerを使い、デバッグすることになる。SharpDevelopmentは完成度が高く、.NET Frameworkの学習用としてだけでなく、小中規模のアプリケーションを開発する場面でも、実用的に利用できるだろう。

前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.