Web Matrixで始めるWebアプリ・プログラミング 第1回 オール・フリーなASP.NET統合開発環境山田 祥寛2004/01/06 |
|
≪今回の内容≫ | |
|
ASP.NETを使ったWebアプリケーション開発におけるIDE(Integrated Development Environment:統合開発環境)活用の有効性については、拙稿「ASP.NETで学ぶVisual Studio .NETの魅力」でも紹介した。ASP.NET開発において統合開発環境の利用は必須ではないが、ASP.NETが持つ開発生産性の潜在力を十二分に引き出す媒体として、統合開発環境の重要性は疑いようもない。
ASP.NET(というより、.NETアプリケーション)対応で最も普及している統合開発環境といえば、いまさらいうまでもなく、Visual Studio .NET(以降、VS.NET)である。しかし、企業SEとして.NET開発を行っているのならばいざ知らず、個人プログラマがまず自らの学習のために統合開発環境を導入したいと思った場合、VS.NETは決して安価なツールではない。Visual Basic .NETやVisual C# .NETなど、より安価な単体のツールもあるが、学習のためならばなおのこと、多くの言語に触れてみたいと思うのが人の常でもある。
そんな方々のために最適な選択肢の1つとなるのが、本稿でご紹介する「Microsoft ASP.NET Web Matrix」(以降、「Web Matrix」)である。Web Matrixは、VS.NETに比べるといくつかの制約があるものの、個人ユーザーが利用するには十分な機能を備えた統合開発環境である。何よりも「無償」でダウンロードできる(2004年1月現在)というのがうれしい。これまでテキスト・エディタだけでASP.NET開発をしてきた方は、これを機に統合開発環境による開発生産性の向上を体感してみてはいかがだろうか。また、.NETによるWebアプリケーション作成には興味があるが少し敷居が高そうだと感じていた方も、ぜひ一度「無償」のWeb Matrixで挑戦してみていただきたい。Web Matrixはインストールするファイルもたった1.3Mbytesと非常にお手軽な統合開発環境だ。
Web Matrixの特徴
以下は、Web Matrixのメイン画面であるが、VS.NETを使った(ご覧になった)ことがある方ならば、VS.NETの画面構成と酷似していることがお分かりいただけるであろう。
Web Matrixのメイン画面 |
ただし、当然のことながら、見掛け上の酷似がそのまま機能上の酷似を表しているわけではない。以下には、Web MatrixとVS.NETとの重要な相違点をいくつか挙げておくことにしよう。
○Windowsアプリケーションには未対応
「Microsoft ASP.NET Web Matrix」というその名のとおり、Web MatrixはあくまでASP.NETによるWebアプリケーション開発のための開発環境である。Windows Formsを利用したWindowsアプリケーションを構築する用途には対応していない。言語的には.NET Framework 1.1で利用可能なVisual Basic .NET、C#、J#などの主要な.NET開発言語に対応しており、それらの言語を自由に選択できる(ただし、現在のVisual C++ .NET(2002および2003)は、ASP.NET Webアプリケーション用の開発言語として使用できない)。
[参考] (1)Borland C#Builder for the Microsoft .NET Framework (2)SharpDevelop |
○IntelliSense機能、デバッグ機能をサポートしない
統合開発環境を利用するメリットの1つとして、コード・エディタ上のIntelliSense(インテリセンス)機能(コード記述時のクラス名やメソッド名などの補完機能)とデバッグ機能が挙げられるが、残念ながら、これらの機能は、Web Matrixではサポートされていない。その代わりといってはなんだが、Web Matrixには豊富なテンプレートやコード生成ウィザード、コード・スニペット(次回以降で解説)などの機能が用意されており、これらの機能を使うことでIntelliSense機能と同じようにコーディングを効率化できる。デバッグ機能についても、ASP.NET標準のトレース機能を使用すれば、デバッグ出力を行うのも容易であるし、小規模な開発であれば、さほどネックとなるポイントではないだろう。
ASP.NETの標準的なトレース画面 |
ASP.NETのトレース機能を有効にすれば、デバッグ出力やリクエスト・パラメータの内容をブラウザ上で確認できる。 |
○ソース管理機能がない
いわゆるVisual SourceSafeに該当するソース管理機能が、Web Matrixには存在しない。これは、Web Matrixがあくまで個人開発にフォーカスした統合開発環境であるという点の裏返しでもある。以下でも述べるが、基本的にWeb Matrixには、個人をターゲットにしたとおぼしき特性がいくつか見られる。もちろん、Web Matrixでチーム開発ができないということではないが、ソース管理機能の有無を考えると、やはりチーム開発にはVS.NET、個人開発にはWeb Matrixという使い分けが順当であろう。
○Web Matrix独自のWebサーバを搭載
Web Matrixには独自の機能として「Web Matrixサーバ」が付属しており、IDE上から起動することができる。仮想ディレクトリやそのほかのパラメータ設定などは一切できない、本当に動作確認のためだけのWebサーバであるが、Web Matrixサーバを用いることで、Windows XP Home EditionのようなIIS(Internet Information Services)を搭載していないプラットフォーム上でもASP.NET開発を行うことができる。これまでIISがないばかりにASP.NET開発を行うことができなかったXP Homeユーザーにとって、これは朗報だ。もちろん、Web Matrixで作成したWebアプリケーションをIISでホストさせて実行することは可能である。
Web Matrixの動作環境
Web Matrixの動作環境は、ASP.NETの動作環境にほぼ一致しており、以下表のとおりである。「ほぼ」というのは、上にも述べたとおり、Windows XP Home EditionではIISがサポートされていないため、ASP.NETを動作させることはできないが、Web Matrixによる開発には対応している点である。
OS環境 | 利用可能なIIS(PWS)のバージョン | ASP.NET | Web Matrix |
Windows NT Server 4.0(Option Pack) | Internet Information Server4.0 | × | × |
Windows 98 | Personal Web Server 4.0 | × | × |
Windows 2000 | Internet Information Services 5.0 | ○ | ○ |
Windows Me | - | × | × |
Windows XP Home Edition | - | × | ○ |
Windows XP Professional Edition | Internet Information Services 5.1 | ○ | ○ |
Windows 2003 Server | Internet Information Services 6.0 | ○ | ○ |
OS環境から見たASP.NETとWeb Matrixの対応状況 |
以降、本稿ではWindows 2000環境をベースとして紹介するが、実際の動作確認はWindows XP/Server 2003でも確認済みである。自分の環境とパスなどが異なる場合には、適宜読み替えてほしい。
INDEX | ||
Web Matrixで始めるWebアプリ・プログラミング | ||
第1回 オール・フリーなASP.NET統合開発環境 | ||
1.Web Matrixの特徴 | ||
2.Web Matrixのインストール | ||
3.Web Matrixの日本語化 | ||
4.Web Matrixの画面構成と機能 | ||
「Web Matrixで始めるWebアプリ・プログラミング」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|