| 公開 | 2003-10-26 |
| 更新 | 2009-05-24 |
.NET Framework プログラミングの入門的な記事です。
.NET Framework プログラムの制作に役立つツールを挙げておきます。
ユニットテストフレームワーク(Testing Framework)の .NET 版。オブジェクトの動作が仕様に則しているかどうかを確認するためのテストを自動化する。
ソフトウェアの完成度を高めるためには、単体テストとその自動実行は必須です。
ビルドツール『Ant』の .NET 版。日々のビルド作業や、完成した作品をまとめるアーカイブ作成作業などを自動化したい場合に使う。
これも個人的には必須です。
Microsoft 製のコード解析ツール。アセンブリの中間コード(IL)を静的に解析し、予め定義されたデザインガイドラインに準拠していない箇所などを指摘する。
デザインガイドラインに準拠することには、不具合の芽を摘んだり、実行効率の悪化を回避する効用もあります。
Microsoft 製の C# コード解析ツール。プロジェクトに含まれるソースコードを静的に解析し、予め定義されたコーディングスタイルに準拠していない箇所を指摘する。
これは飽くまで「Microsoft が内部で使用しているツール」であることに留意しましょう。このツールで定義されるコーディングスタイルは Microsoft のプログラマー達のためのガイドラインです。「全ての C# プログラマーが従うべきルール」ではありません。
たとえば、インデントには「タブ」ではなく「4 個のスペース」を使うように指示されます。このような細かな制約が嫌な(感性が合わない)場合には、単純にそのルールを「無効」に設定します。ただし、逆に「インデントにはタブを使う」というルールは標準では用意されません。自前でカスタムルールを調達することになります。
アセンブリ解析ツール(クラスブラウザー)。MSIL/C#/VB.NET/Delphi/Managed C++ への逆コンパイラでもある。
以前は Lutz Roeder's .NET Reflector という名称で、その名の通り Lutz Roeder 氏の個人プロジェクトだったのですが、2008 年 8 月に開発が Red Gate 社に移管されたようです。その後 2011 年 2 月に製品化されています。
Microsoft 製のプロファイラ。.NET アプリケーションのオブジェクト生成(確保)状況やコールグラフなどを詳細に調査できる。
動作速度の改善(ボトルネックの特定)を目的とするプロファイラ。対象アセンブリのプロファイル専用バージョンを自動生成して調査するため、ソースコードの変更は不要です。
オープンソース、パブリックドメインのデータベースエンジン SQLite の .NET バインディング。
アセンブリファイル System.Data.SQLite.dll だけで動作します。
オープンソースな .NET Framework のクロスプラットホーム実装。Linux や Mac OS X で動作する。
Mono Project のコード解析ツール。
FxCop と同種のツールです。独自のルールが定義されています。