Microsoftの新しい.NETコードがMicrosoft StyleCopに準拠していないのはなぜですか?
-
03-07-2019 - |
質問
ASP.NET MVCベータ版をダウンロードしましたが、テンプレートはStyleCopに準拠していません。
Microsoftの新しい.NETコードがStyleCopに準拠していないのはなぜですか?
解決
StyleCopは、Microsoft Framework Design Guidelinesへの準拠をチェックします。
ガイドラインは、.NET Frameworkを適切に構成するコードにのみ適用されます。適切なフレームワークでさえ、時折失効します。他の場所では、ガイドラインは推奨のみです。
フレームワーク設計ガイドラインは、印刷された本として入手できます。また、貢献者からの注釈について、同意と不同意の理由と方法、ルールの適用と解釈の最良の方法について非常に興味深い読み物を作成します。いくつかの重要な事実を指摘する必要があります。
- 書いた人でさえ ガイドラインはそれらすべてに同意します。
- おそらくあなたは書いていない 野生にリリースするためのフレームワーク。
- ガイドラインは進行中の作業であり、StyleCopはそれらに遅れをとっています。
他のヒント
Microsoftはモノリシックではありません。その中の異なるグループは、StyleCop警告の重要性について異なる意見を持っています。多くの人は、それほど大きな違いをもたらさない変更を行うことについて、フィドルよりも早くリリースすることを好むでしょう。
また、StyleCopは常に正しくありません。警告を処理する最善の方法は、無視することです。
style copに準拠することについての考え:
-
スタイル警官には、一般的に良いルールがあります。
-
一般的なルールが特定のケースに対して十分ではない、または意味をなさない状況があります。
-
たとえば、Microsoft XNAフレームワークを見てください。このフレームワークは、FXCopの悲鳴を上げる多くのルールを破ります。しかし、パフォーマンスや移植性など、それらを壊す絶対的な正当な理由があります。
-
スタイルコップルールは、推奨事項であり、ではありません 法律であり、それらを破ることは、状況に最も利益をもたらすものの推論に帰着します:ルールに従い、標準的かつ馴染みがあるか、または状況が指示する特定の理由でルールを破り、そうすることで他の利点がある場合。
-
ルールが変更されます。何かが変化を後押ししなければなりません。
だから、Microsoft MVCチームは、そうするのが良いことだと感じた場合、スタイルコップに非準拠であってもかまいません。
PS正当な理由なしにルールを破ることは、これまでに良いことではありません。
Visual StudioのすべてのMicrosoftテンプレートではないにしても、ほとんどのテンプレートはスタイルコピーの苦情ではありません。
同様に、ほとんどのMicrosoftアプリケーションがMicrosoft Usabilityガイドラインに従っていない理由を尋ねることができます。
MSは大企業であり、他のすべての大企業と同様、通常は独自のルールに従っていません。