2010-08-03 21 views
1

Je suis tombé sur une fonctionnalité de langage C# aujourd'hui grâce à ReSharper, le ?? opérateur. Cela a contribué à rendre le code encore plus concis que ma première tentative. Voir ci-dessous pour l'itération dans l'amélioration des lignes/longueur/lisibilité du code.Quelles fonctionnalités du langage C# vous aident à réduire les lignes de code et à améliorer la lisibilité?

Une première tentative pourrait être quelque chose comme ..

if (usersEmail == null) 
    userName = firstName; 
else 
    userName = usersEmail; 

refactorisé à ..

userName = usersEmail == null ? firstName : usersEmail; 

Au départ, je pensais que les ci-dessus serait le plus efficace/version concise, mais il y a un troisième étape ...

userName = usersEmail ?? firstName; 

Id aime savoir si vous avez des exemples similaires où les caractéristiques du langage C# aider à réduire les lignes de code et améliorer la lisibilité?

+3

wiki ?? Aussi cela a de nombreuses réponses ... – Gishu

+0

Devrait probablement être wiki communautaire. – tzaman

+0

Je ne suis pas d'accord que l'opérateur tenerary améliore la lisibilité – benPearce

Répondre

3

Le mot-clé var pour la saisie statique implicite et les propriétés automatiques sont deux bons exemples.

4

le bloc à l'aide, LINQ, les délégués anonymes, la liste serait tout simplement aller ..

C# a une très belle habitude d'introduire des fonctionnalités dans chaque version majeure qui réduisent la quantité de code que vous avez à écrire.

1

Utilisation du mot-clé

1

Méthodes d'extension.

0

Requêtes LINQ vous permettant d'exprimer les critères de requête mieux qu'une boucle foreach