Coding Conventions: Member Variabeln mit vorangehendem Underscore?
-
Ich meine dass mir einmal jemand gesagt hat, dass man in C# bei Membervariabeln einen Underscore davor setzt, also z.B:
class Person { string _name; int _age; }
Ich habe das allerdings kaum gesehen in Beispielcode, den ich im Internet gefunden habe. Was meint ihr dazu?
-
Schlägt auch Resharper vor mit Underscore.
-
icarus2 schrieb:
Ich meine dass mir einmal jemand gesagt hat, dass man in C# bei Membervariabeln einen Underscore davor setzt
Es gibt eigentlich nur einen Grund dafür: Properties von ihren "backing fields" abzugrenzen.
Optisch ansprechender finde ich aber die Unterscheidung über Groß-/Kleinschreibung im Anfangsbuchstaben:
class Tabasco { int scoville; public int Scoville { get { return scoville; } set { scoville = value; } } }
Es ist Geschmacksache. Leute die einem einen Stil ohne Begründung aufzwingen wollen, kann man i.d.R. ignorieren.
-
Danke fuer eure Antworten.
Wenn wir schon dabei sind: lohnt es sich den Resharper zu installieren?
-
icarus2 schrieb:
Wenn wir schon dabei sind: lohnt es sich den Resharper zu installieren?
http://www.jetbrains.com/resharper/
-> 30-day free trial.Man hat nichts zu verlieren
Ich habe mich nach der Testphase aber nicht für einen Kauf entschieden.
-
Ich werde mir wohl kaum die Lizenz kaufen. Eventuell teste ichs aber trotzdem mal zum reinschnuppern.
Danke fuer die Antworten.
-
Normalerweise wird man süchtig nach ReSharper und kann, wenn man es einmal ausprobiert hat, nicht mehr ohne.
-
StyleCop dagegen hat eine Standard-Regel, welche Underscores am Anfang (bzw. auch mittendrin) eines privaten Members verbietet (SA1309: Field names must not start with an underscore). Daher haben wir diese Regel bei uns in der Firma deaktiviert (da unser Code teilweise automatisch erzeugt wird und Unterstriche am Anfang nichts ungewöhnliches sind).
-
...
-
-
.
(Sorry, Unsinn)
-
fx schrieb:
Schlägt auch Resharper vor mit Underscore.
Resharper schlägt nur das vor, was man ihm sagt. Ich habe Resharper so eingestellt, dass er mir
m_
vorschlägt. Resharper ist da unglaublich stark konfigurierbar.Wenn man Resharper wirklich eingehend lernt und sich damit auseinander setzt, kann man seine Entwicklungszeit deutlich reduzieren. Resharper überzeugt mich in vielen Bereichen.
1. Code Assistance: Nicht nur eine sehr gute und umfassende konfigurierbare Autovervollständigung, sondern hilft auch mit ungewolltest zu verhindern oder den Code zu optimieren. Resharper hilft einem auch dabei, dass man seine eigenen Style-Regeln einhält.
2. Sehr viele Möglichkeiten was das Refactoring betrifft.
3. Einfaches einbinden von Unittests mit dem NUnit Framework.Diese 3 Punkte sind bis heute für mich die Hauptvorteile von Resharper und ich bin absolut froh, dass ich mir die Lizenz gekauft habe. Ich musste letztens wieder mal an einem Visual Studio ohne Resharper arbeiten. Das war einfach nur eine Qual, wie kann man sich sowas nur antun?
Grüssli
-
µ schrieb:
Optisch ansprechender finde ich aber die Unterscheidung über Groß-/Kleinschreibung im Anfangsbuchstaben:
Ich ebenso, und ich verwende den Resharper (Optionen sind schon was schönes)...