NEXTSCAPE blog

株式会社ネクストスケープの社員による会社公式ブログです。ネスケラボでは、社員が日頃どのようなことに興味をもっているのか、仕事を通してどのような面白いことに取り組んでいるのかなど、会社や技術に関する情報をマイペースに紹介しています。

MENU

FxCop (.NETのプログラミングチェック)

このページでは.NETのコーディングにおけるルールチェックツールであるFxCopに関する説明を公開します。

FxCopとは

FxCopは、.NETのプログラミング内容が適切かチェックするMicrosoftのツールです。基本的にMicrosoftが提供する「クラス ライブラリ開発のデザインガイドライン」に基づいてアセンブリを分析します。

FxCopでは、GUIアプリケーションが用意されており、チェックするルールを選択できます。

f:id:ns_yamaki:20210705165729j:plain

上図を見てわかるように、FxCopのチェックルールは10個のカテゴリから構成されています。

  1. デザイン(設計)
  2. グローバリゼーション(国際化対応)
  3. インターオペラビリティ(相互運用性)
  4. モバイル
  5. 命名規約
  6. パフォーマンス
  7. ポータビリティ(移植性)
  8. セキュリティ
  9. セキュリティ透過性
  10. 語法・使用法

これらのカテゴリに含まれるチェックルールによって、コンパイル後のアセンブリに対して、コードが適切に記述されているかをチェックすることができます。

チェックした結果は、赤のエラーや黄色の警告などレベル別にメッセージが表示されます。

FxCopは、StyleCopとは異なり、C#以外の言語(VB.NET、F#、C++、IronPython、Boo等)で作成されたマネージコードのDLLやEXEのコードをチェックすることができます。(ちなみにFxCopは、Frameworkの警察という意味です。)

WindowsSDKのインストール(FxCopのインストール準備)

FxCopは、WindowsSDKに同梱されています。インストーラを使用してセットアップすることができます。

1. Windows SDKのセットアップ画面

f:id:ns_yamaki:20210705172109j:plain

 

 2. WindowsSDKのインストール先を設定

f:id:ns_yamaki:20210705172140j:plain


3. FxCopを使いたい場合はToolにのみチェックを入れます。

f:id:ns_yamaki:20210705172224j:plain

Nextボタンをクリックしてインストールを完了させます。

4. WindowsSDKのインストール完了

f:id:ns_yamaki:20210705172302j:plain

 

FxCopのインストール

続けてFxCopをインストールします。スタートメニューからWindowsSDKのToolsフォルダを探して、FxCopのインストーラを起動します。

もしくは、エクスプローラーで「<プログラムファイル>\Microsoft SDKs\Windows\v7.1\Bin\FXCop 」のパスを開きます。

 

1. FxCop10.0のセットアップ画面

f:id:ns_yamaki:20210705172423j:plain

 

2. FxCop10.0のライセンスターム画面

f:id:ns_yamaki:20210705172451j:plain

 

3. FxCopのインストール先を指定

f:id:ns_yamaki:20210705172538j:plain

 

4. FxCopのインストール完了

f:id:ns_yamaki:20210705172552j:plain

 

スタイルのチェック方法

インストールが完了したら、FxCopを起動します。そして、チェックを行いたい対象アセンブリを選択して、チェックボタンをクリックします。これによってチェックが行われますので、エラーメッセージの内容を確認すると良いでしょう。

FxCopの日本語化について

残念ながら、FxCopの日本語化は行われていません(レポートを日本語化する試みはあります)。ただし、Visual Studioの上位エディション(Visual Studio2010の場合 Premiumエディション以上)に備わっている「コード分析機能」がFxCopと同じ機能を提供しています。上位エディションを用いることで、英語のメッセージが表している意味を理解できると思います。参考まで、「C:\Program Files\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools」の各「ja」フォルダにその日本語リソースが配置されています。

FxCopとVisual Studioの統合について(FxCop Integrator)

FxCopはスタンドアローンのWindowsアプリケーションですが、Visual Studioから呼び出せると便利と考える方も多いと思います。そのような場合は、オープンソースのFxCop integratorを利用できます。Visual Studio 2010のProfessionalエディション以上であれば、統合することができます。

参考

docs.microsoft.com

blogs.msdn.com

www.infoq.com