Aus C # /. NET Little Wonders: Ausdrucksstarke Mitglieder in C # 6 :
Solltest du das also benutzen? Auf den Stil kommt es an. Ich würde mich darauf beschränken, einfache Ausdrücke und Aussagen zu verwenden, die auf den ersten Blick klar zu verstehen sind.
(Hervorhebung, meine; siehe Update 1 unten)
Mehr aus der Zusammenfassung des Artikels oben:
C # 6 gibt uns jetzt die Möglichkeit, Nur-Get-Eigenschaften und Methodenkörper mit Ausdrücken anzugeben. Dies kann dazu beitragen, die Syntaxlast sehr einfacher Methoden zu verringern, um den Code übersichtlicher zu gestalten.
Verwenden Sie jedoch bei allen Dingen Ihr Urteil, ob es für eine bestimmte Situation geeignet ist. Wenn ein Ausdruck sehr lang oder komplex ist, ist die Verwendung der Ganzkörpersyntax möglicherweise noch besser lesbar.
Und noch ein Zitat zur Leistung, denn Leistungsprobleme können auch auftreten, wenn es angebracht ist, eine bestimmte Sprachfunktion zu verwenden:
Nun fragen Sie sich vielleicht, ob dies Auswirkungen auf die Leistung zur Laufzeit hat. Eigentlich lautet die Antwort nein . Dies ist einfach syntaktischer Zucker, der sich in dieselbe IL ausdehnt wie das Schreiben des gesamten Körpers. Es wird kein Delegat erstellt, sondern lediglich die Lambda-Ausdruckssyntax ausgeliehen, um das Schreiben einfacher Körper zu vereinfachen, die zu einem Ausdruck führen.
(Hervorhebung des Autors)
Update 1: @ JörgWMittag sagte
Das macht keinen Sinn. "Beschränken Sie dies auf einfache Ausdrücke und Anweisungen"? Huh? Es funktioniert nicht einmal mit Anweisungen, nur mit Ausdrücken!
Es scheint, dass der ursprüngliche Autor möglicherweise einen Tippfehler hat. Zur Verdeutlichung aus dem neuen und verbesserten C # 6.0 :
Funktionen mit Ausdruckscharakter sind eine weitere Vereinfachung der Syntax in C # 6.0. Dies sind Funktionen ohne Anweisungstext. Stattdessen implementieren Sie sie mit einem Ausdruck, der der Funktionsdeklaration folgt.
Dies macht eine Methode oder Eigenschaft nicht zu einem Ausdruck . Es verwendet die Expression- Syntax , um die Codezeilen (und die Anzahl der geschweiften Klammern) zu reduzieren.
Meine ursprüngliche Empfehlung lautet nach wie vor: Verwenden Sie sie, wenn Ihr Code dadurch klarer und verständlicher wird, und nicht nur, weil Sie ihn verwenden können.