ツールをサポートして.NETで単一のコーディング標準を確保する方法


14

おそらく、基本的な状況は誰もが知っています。チーム内の特定のコーディング標準について合意したので、今度はすべてのコーディング標準に従うようにします。

重いペアプログラミングを介してそれを行うものもあれば、コーディング標準のリストを維持し、手動でレビューするものもあります。また、Visual Studioの静的コード分析ツールを使用して、コーディング標準が適用されていることを確認するものもあります。

コーディング標準を確保するためのベストプラクティスは何ですか?どのツールを使用しますか?すべての開発者が知っておくべき重要なツールはありますか?開発ツールにコードの標準化をどのように統合しますか?

回答:


15

StyleCop(現在はResharperのStyleCop)は、C#コードベース内でコーディングスタイルルールを適用するためによく使用されます。

CIビルドに統合して、違反が発生した場合にビルドエラーを引き起こす可能性があります。


使い方の詳細はありますか?各コミットの前にスタイルチェックを実行したいと思います。だから私はそれのためにCLIが必要です。ありますか。関連する情報が見つかりませんでした。
-FreeLightman


@R。-StyleCopルールをカスタマイズできるのが1つだけの場合。ああ、待ち時間...
オデッド

@R。-独自のルールを作成することもできます。
オデッド

6

最初に、コードを継続的にビルドする適切なビルドサーバーがあることを確認します。TFSまたはJenkins / Hudson + Msbuildが適切なオプションです。このビルドサーバーでは、もちろんテストを実行し、静的コード分析と構文チェッカーも実行できます。

静的コード分析にはFxCopまたはGendarmeを使用することをお勧めします。両方を並べて使用できます。

成功への1つの重要な鍵:大規模なルールセットでそれらを展開しないでください。何百万もの警告が表示され、誰も気にしません。

経験則は次のとおりです。

  • 警告は常にゼロです。必要に応じて最初にチェックセットを減らしてから、スプリントごとに新しいチェックを追加して修正します。実行されるすべてのチェックに実際の価値があり、基準と一致していることを確認してください。

  • ドメイン固有のルールを順守する必要がある場合は、独自のルールを実装することを恐れないでください。

構文チェックには、Resharperを使用している場合は、StyleCopまたはStyleCop for Resharperを使用します(これも強くお勧めします)。


2

StyleCopとFxCopは、開発者にコードスタイルを思い出させる軽量ツールです。Resharperも良いものですが、VSを非常に遅くします。

FxCopは、優れたドキュメント、分類、例、その他の多くの機能を備えた豊富なルールライブラリがあるため、お勧めします

また、Visual Studio用のStyleCop Fixer拡張機能が利用可能で、通常の間違いを修正するのに役立ちます。

コードメトリックは、コードスタイルによっても影響を受けることがあります。このツールを使用して、コードの保守性を監視できます。


2

手動レビューよりも先に、既に述べた自動コード分析(FxCop、StyleCopy、CIビルドなど)を最初に機能させることを強調したいと思います。自動チェックは、手動によるレビューよりもはるかに多くのものを取り上げ、通常はより厳密で一貫性があり、自己文書化されます。手動によるレビューは、より高いレベルの設計決定などに役立ちますが、私の経験では、非常に主観的で無計画な場合があります。


0

NDependは、.NETコードベースでさまざまなコーディング標準を実施するために使用できます。ここには、約200のデフォルトコードルールがあり、参照できます。また、NDepend ではルールは単なるC#LINQクエリであるため、既存のルールをカスタマイズしたり、独自のルールを作成するのは簡単です。

免責事項:私はNDependで働いています

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.