Wie beurteilen Sie die Diskrepanz zwischen „StyleCop C # style“ und „Rahmen-Design-Richtlinien C # style“ lösen?

StackOverflow https://stackoverflow.com/questions/426622

Frage

Nach dem durch den Anhang A gehen „C # Codierstil Conventions“ des großen Buches „Framework Design Guidelines“ (2. Auflage vom November 2008), bin ich ganz verwirrt, was Codierungsstil ist Microsoft intern mit / zu empfehlen.

Der Blogeintrag von C # Art behauptet:

  

In der Tat, die Unterschiede zwischen dem „StyleCop Stil“ und dem „Framework Design Guidelines Stil“ sind relativ gering

Wie ich es sehe, sind die Unterschiede recht ausgeprägt. StyleCop sagt öffnende Klammer auf einer separaten Zeile sein sollte, sagen Framework Design Guidelines es nach der Eröffnung Erklärung sein sollte. StyleCop sagt, dass alle Schlüsselwörter durch ein Leerzeichen zu befolgen sind, Framework Design Guidelines sagen ‚alle Räume loswerden‘ (auch um binäre Operatoren).

Ich finde diese Regel aus dem Framework Design Guidelines Buch besonders ironisch (Seite 366, 6. Regel von oben):

  

nicht Verwendung Leerzeichen vor Flusskontrolle Aussagen

Right: while(x==y)
Wrong: while (x == y)

Dies wird ausdrücklich besagt, dass der StyleCop Stil ist falsch (Leerzeichen nach dem Schlüsselwort while, Leerzeichen vor und nach der Gleichheit Binäroperators).

Am Ende formatierte Code des StyleCop Stil verwendet, hat ein ganz anderes „Gefühl“ aus dem formatiert man den Framework Design Guidelines Stil verwenden. Durch Befolgen des Framework Design Guidelines Stil, würde man eine Reihe von Regeln deaktivieren müssen (und es gibt keine Regeln, die die Einhaltung des Framework Design Guidelines Stil überprüfen ...).

Könnte jemand (MSFT Insider vielleicht?) Auf dieser Divergenz etwas Licht?

Wie wird Ihr Team mit diesem zu tun? Nach StyleCop? Rahmen-Design-Richtlinien? Das Ignorieren insgesamt Stil? Backen Sie Ihren eigenen Stil?

War es hilfreich?

Lösung

Auf einem Blog habe ich darüber gelesen (ich kann nicht scheinen, um die URL zu finden) festgestellt wurde: die Rahmenrichtlinien basieren und von C ++ guideliness entwickelt (sie sind alle C ++ Entwickler gewürzt), während die Richtlinien StyleCop sind modernere nur guideliness # neue C bietet ... Beide sind in Ordnung, eine Entscheidung zu treffen, sich ... Ich persönlich benutze die StyleCop diejenigen

Andere Tipps

In diesem Artikel von dem StyleCop Team wird genau erklärt, was Sie fragen, denke ich. http://blogs.msdn.com /sourceanalysis/archive/2008/05/25/a-difference-of-style.aspx

Und den zweiten Teil Ihrer Frage zu beantworten, unser Team gerade angefangen StyleCop mit allen Regeln verwendet (einige Leute wählen, und wählen, welche zu verwenden). Das einzige, was Ich mag nicht wissen, ist die zusätzliche Zeit es braucht, sondern ein Werkzeug wie StyleCopForResharper Verwendung macht es viel schneller gehen. Früher habe ich wirklich ärgerlich, wenn Leute Code geschrieben hat, die anders aussah, als ich es geschrieben hätte, aber jetzt, dass wir verwenden StyleCop, jeder Code sieht identisch. Keine Lippe über ärgerliche Dinge mehr beißen Menschen tun

Wir verwenden StyleCop für alle unsere Code, und abgesehen von ein paar kleinere Kritikpunkte, die ich am meisten seiner Standards fühlen zu den meisten lesbaren Code führen. Viele seiner Standards wurden in Microsoft stark diskutiert und haben Feedback von der Community hatte, und während es ist nicht zu erwarten, dass jeder mit allem einverstanden sind, ist es wahrscheinlich über die besten ‚Standard‘ gibt es (vor allem, da es ermöglicht die automatische Validierung und automatische Korrektur mit dem StyleCop für ReSharper Plugin).

Wenn es irgendwelche Dinge, die Sie stark mit nicht einverstanden ist, Jason Allor, die das Werkzeug hält ist ganz offen für Vorschläge, um bestimmte Dinge, zum Beispiel mit Auto-Eigenschaften StyleCop ursprünglich bestanden auf ...

public int Prop
{
    get;
    set;
}

... aber wir erhöhten Anforderung einer Änderung einzelne Leitungseigenschaften (das heißt alles in einer Zeile), wie es ist nicht weniger lesbar und nimmt weniger Platz zu ermöglichen. Er machte diese Änderung innerhalb von wenigen Tagen.

Sie treffen eine Entscheidung. Wenn Sie einige Teile ein und einige Teile der anderen mögen, Ihren eigenen Style Guide schreiben. Wenn Sie eine besser als die andere mögen, es wählen.

Das Wesentliche, was zu tun ist, um einen Stil zu wählen; es gibt keine Möglichkeit einer über dem anderen in jeder rigorose quantitative Art und Weise zu bewerten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top