特集Visual Studio 2005エディション比較Professional? Standard? それともExpress?デジタルアドバンテージ 一色 政彦 |
![]() |
|
Page1
Page2
|
|
VS 2005の機能比較
●リファクタリング機能
VS 2005では、7種類のリファクタリングを支援する機能が追加された。StdやPro以降ではこのすべてを利用できるが、Expではたった2種類しか利用できない。
| リファクタリング | Exp | Std | Pro |
| 名前の変更 |
○
|
○
|
○
|
| メソッドの抽出 |
○
|
○
|
○
|
| フィールドのカプセル化 |
○
|
○
|
|
| インターフェイスの抽出 |
○
|
○
|
|
| ローカル変数の昇格 |
○
|
○
|
|
| パラメータの削除 |
○
|
○
|
|
| パラメータ順序の再変更 |
○
|
○
|
|
| リファクタリング一覧表 | |||
| Expでは2種類のリファクタリングしか利用できない。 | |||
●ソフトウェア展開機能
VS 2005では従来の.MSIファイルによるセットアップ(以降、.MSIセットアップ)に加えて、新たなソフトウェア展開機能としてClickOnceが追加された。
StdやPro以降ではClickOnceと.MSIセットアップの2つがサポートされている。しかしExpではClickOnceのみである(なお純正比較表ではStdが「ClickOnce」、Expが「なし」となっているが、これは間違いのようである)。
| ソフトウェア展開機能 | Exp | Std | Pro |
| ClickOnce |
○
|
○
|
○
|
| .MSIセットアップ |
○
|
○
|
|
| ソフトウェア展開機能一覧表 | |||
| ExpでもClickOnceは利用可能だ。 | |||
●IDE拡張機能
VS 2005のIDEを拡張する際には、従来のVS.NETと同じように、マクロ、アドイン、外部ツールの呼び出しなどが可能である(外部ツールの呼び出しとは、メニュー・バーの[ツール]−[外部ツール]で登録したアプリケーションを呼び出す機能のこと)。
しかし基本的にExpではIDEの拡張ができないようになっている。
| IDE拡張機能 | Exp | Std | Pro |
| マクロの作成と利用 |
○
|
○
|
|
| アドインの利用 |
○
|
○
|
|
| アドインの作成 |
○
|
○
|
|
| 外部ツールの呼び出し |
○
|
○
|
○
|
| ソフトウェア展開機能一覧表 | |||
| Expでは外部ツールの呼び出ししか対応していない。 | |||
●ソース管理
Std、Pro以降のVS 2005ではソース管理に対応しているが、Expは対応していない。
●プロジェクト・テンプレート
最後にVS 2005であらかじめ用意されているプロジェクト・テンプレートを次の比較表にまとめた。プロジェクト・テンプレートは新規プロジェクトを作成する際に選択するもので、それにはプロジェクトをビルドするのに最低限必要な一連のファイル(ひな形)が含まれている。
注意点としては、「Windows サービス」や「SQL Server プロジェクト」のプロジェクト・テンプレートはPro以降でしか利用できないこと、ATL/MFC関連のプロジェクト・テンプレートはExp(この場合はVisual C++ 2005 Express Edition)では利用できないこと(ATL/MFCそのものがExpの中に含まれていない)などである。
| テンプレート | Exp | Std | Pro | ||
| Visual C#/ Visual Basic | Windows | Windows アプリケーション |
○
|
○
|
○
|
| クラス ライブラリ |
○
|
○
|
○
|
||
| Windows コントロール ライブラリ |
○
|
○
|
|||
| Web コントロール ライブラリ |
○
|
○
|
|||
| コンソール アプリケーション |
○
|
○
|
○
|
||
| Windows サービス |
○
|
||||
| 空のプロジェクト |
○
|
○
|
○
|
||
| Crystal Reports アプリケーション |
○
|
||||
| スマート デバイス (Pocket PC 2003) | デバイス アプリケーション |
○
|
○
|
||
| クラス ライブラリ |
○
|
○
|
|||
| コントロール ライブラリ |
○
|
○
|
|||
| コンソール アプリケーション |
○
|
○
|
|||
| 空のプロジェクト |
○
|
○
|
|||
| デバイス アプリケーション (1.0) |
○
|
○
|
|||
| クラス ライブラリ (1.0) |
○
|
○
|
|||
| コンソール アプリケーション (1.0) |
○
|
○
|
|||
| 空のプロジェクト (1.0) |
○
|
○
|
|||
| スマート デバイス (Smartphone 2003) | デバイス アプリケーション (1.0) |
○
|
○
|
||
| クラス ライブラリ (1.0) |
○
|
○
|
|||
| コンソール アプリケーション (1.0) |
○
|
○
|
|||
| 空のプロジェクト (1.0) |
○
|
○
|
|||
| スマート デバイス (Windows CE 5.0) | デバイス アプリケーション |
○
|
○
|
||
| クラス ライブラリ |
○
|
○
|
|||
| コントロール ライブラリ |
○
|
○
|
|||
| コンソール アプリケーション |
○
|
○
|
|||
| 空のプロジェクト |
○
|
○
|
|||
| データベース | SQL Server プロジェクト |
○
|
|||
| スタート キット | スクリーン セーバー スタート キット |
○
|
○
|
○
|
|
| ムービー コレクション スタート キット |
○
|
○
|
○
|
||
| Visual C#/ Visual Basic | Web サイト | ASP.NET Web サイト |
○
|
○
|
○
|
| ASP.NET Webサービス |
○
|
○
|
○
|
||
| パーソナル Web サイト スタート |
○
|
○
|
○
|
||
| 空のWebサイト |
○
|
○
|
○
|
||
| ASP.NET Crystal Reports Web サイト |
○
|
||||
| Visual C++ | ATL | ATL Server Web サービス |
○
|
||
| ATL Server プロジェクト |
○
|
||||
| ATL プロジェクト |
○
|
○
|
|||
| CLR | ASP.NET Web サービス |
○
|
○
|
||
| クラス ライブラリ |
○
|
○
|
○
|
||
| CLR コンソール アプリケーション |
○
|
○
|
○
|
||
| 空の CLR プロジェクト |
○
|
○
|
○
|
||
| SQL Server プロジェクト |
○
|
||||
| Windows フォーム アプリケーション |
○
|
○
|
○
|
||
| Windows フォーム コントロール ライブラリ |
○
|
○
|
|||
| Windows サービス |
○
|
○
|
|||
| 全般 | カスタム ウィザード |
○
|
○
|
||
| メイクファイル プロジェクト |
○
|
○
|
○
|
||
| 空のプロジェクト |
○
|
○
|
○
|
||
| MFC | MFC ActiveX コントロール |
○
|
○
|
||
| MFC DLL |
○
|
○
|
|||
| MFC アプリケーション |
○
|
○
|
|||
| スマート デバイス | ATL スマート デバイス プロジェクト |
○
|
○
|
||
| MFC スマート デバイス ActiveX コントロール |
○
|
○
|
|||
| MFC スマート デバイス DLL |
○
|
○
|
|||
| MFC スマート デバイス アプリケーション |
○
|
○
|
|||
| Win32 スマート デバイス プロジェクト |
○
|
○
|
|||
| Win32 | Win32 コンソール アプリケーション |
○
|
○
|
○
|
|
| Win32 プロジェクト |
○
|
○
|
|||
| その他のプロジェクトの種類 | セットアップと配置 | セットアップ プロジェクト |
○
|
○
|
|
| Web セットアップ プロジェクト |
○
|
○
|
|||
| マージ モジュール プロジェクト |
○
|
○
|
|||
| セットアップ ウィザード |
○
|
○
|
|||
| CAB プロジェクト |
○
|
○
|
|||
| スマート デバイス CAB プロジェクト |
○
|
○
|
|||
| データベース | データベース プロジェクト |
○
|
|||
| 機能拡張 | Visual Studio アドイン |
○
|
○
|
||
| 共有アドイン |
○
|
○
|
|||
| Visual Studio ソリューション | 空のソリューション |
○
|
○
|
||
| プロジェクト・テンプレート一覧 | |||||
ただしテンプレートがなくとも、「Windows サービス」など、多くの種類のアプリケーションはExpでも構築可能である(しかし「SQL Server プロジェクト」など、一部のものは構築できない)。
●そのほかの主要な機能差
そのほかの比較事項としては、レポーティング機能、64bitsアプリケーション開発、リモート・デバッグなどへの対応が挙げられるが、これらについては純正比較表の内容が参考になるだろう。従って本稿では割愛する。
■
以上を総合的に考察すると、「Exp」と「StdやPro」の間にはかなり差異があり、逆に「Std」と「Pro」は非常に似ていることが分かる。
Expは無償ということもあり、機能制限・省略化・簡略化されているために、本格的に使おうとすると、使いづらいところが出てくるかもしれない。実際に触ってみて、使いたい機能が利用できない場合や使いにくいと思う場合は、ExpからStdやProなどにアップグレードすればよいだろう(前述したように、Expを持っていればStdやProに低コストでアップグレード可能である)。
StdかProかを選択する基準としては、データベースなどのサーバー関連の実装を行うか、Crystal Reportsなどのレポーティング機能を利用するかなどが挙げられる。こういったエンタープライズ色の強いシステム開発を行う場合にはProが最適だろう。それ以外はStdで問題ない場合も多いだろう。
もちろん将来どのような案件が来てもすぐに開発できるようにしたいと考えるなら、すべての機能をフルに利用できるProや、さらに上位エディションのTeam Systemが最良だろう。![]()
| INDEX | ||
| [特集] Visual Studio 2005エディション比較 | ||
| Professional? Standard? それともExpress? | ||
| 1. VS 2005のIDEユーザー・インターフェイス比較 | ||
| 2. VS 2005の機能比較 | ||
- 第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用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|





