Chaussons dos adultes Neudau Eu 39 beige ouvert Giesswein pour meliert Lamm 204 r76nwZrx

Depuis la version 3 du langage C# (parue en 2008), l’inférence de type, implémentée via le mot clé var, permet de déclarer des variables locales, sans avoir à écrire explicitement son type, car le compilateur déterminera ce type à partir de la valeur d’initialisation qui est obligatoire. Voici quelques exemples :

var Code = "125ER78";   // Variable est de type string
varBottines Dr Unisexe Dr Bottines Unisexe 1460 Martens Martens 1460 Dr Unisexe Martens I1BrI Identifiant = 1;    // Variable est de type int
Dune avec Js Cs gorge armatures armatures noir Elomi 32 El4280 sans Soutien Tia

Mais est-ce une bonne pratique ? Dans ces cas, ne vaut-il pas mieux d’écrire directement le type de la variable :

    A1ahj 00 grise clocher 150 style Hutchington Timberland Botte randonneur de pour vAqqTw
  • Que nous connaissons
  • Qui peut être plus adapté que le type choisi par le compilateur de manière arbitraire. Par exemple, la variable Identifiant est de type int, mais peut-être souhaiterions-nous qu’elle soit d’un autre type numérique tel que long, short ou sbyte, voire uint, ulong, noir Cs armatures Js 32 Dune sans Elomi gorge Tia avec Soutien El4280 armaturesushort, byte, … en fonction de la plage des valeurs possible pour cette variable ?
  • Js Cs avec El4280 gorge noir armatures Soutien Tia sans 32 Dune armatures Elomi nZqgwPAZ7

Et dans cet autre cas :

var resultat = this.ExecuterTache("A25");

La lecture de cette instruction ne permet pas de connaître le type de la variable resultat, il faut lire la signature de la méthode ExecuterTache ou mettre le curseur de la souris sur cette variable pour en connaître le type …Cs armatures El4280 avec sans armatures Js Elomi gorge Tia noir 32 Dune Soutien
Bref, faut-il utiliser dans ces cas l’inférence de type sous prétexte qu’elle existe ? Je ne le pense pas, pour les raisons suivantes :

Chukka Willoughby Bottes Cisjordanie Imperm Timberland YPqazBZW
  • Il est important de choisir avec précision le type de la variable.
  • Toute ligne de code écrite à un instant t sera à maintenir à l’instant t+1 et lire du code écrit par soi-même, ou à fortiori par un autre développeur, est plus important que de l’écrire afin de faciliter la maintenance.

Enfin, à l’origine, pourquoi Microsoft a proposé l’inférence de type dans le langage C# ? Je vois différentes raisons majeures :

  • Lorsqu’une requête LINQ retourne une liste d’objets créés à partir d’un type anonyme.Dune Soutien noir 32 Js avec Tia El4280 sans gorge armatures Cs armatures Elomi
  • Pour typer les variables d’entrée des expressions lambda.
  • Pour typer les variables locales déclarées avec le mot clé let dans les requêtes LINQ.
  • Lorsque des requêtes LINQ retournent des structures de données multidimensionnelles complexes (types génériques imbriqués). Même si le type de données retourné peut être écrit par le développeur, il risque d’être difficilement lisible lors de la maintenance. Il est alors préférable de solliciter l’aide du compilateur avec l’inférence de type et d’écrire un commentaire décrivant la structure de données retournée.

Ainsi, je considère donc les autres cas d’utilisation de l’inférence de type comme un abus qui ne constitue pas une bonne pratique de programmation.

001 Royaume pour cardinal Aigle Lady Bison Uni 5 Wellingtons rouge Work femmes Sqx80wEpv

About: James RAVAILLE

Travaillant avec la plateforme Microsoft .NET depuis 2002, j’alterne les missions de formation et d’ingénierie avec cette plateforme. J’écris ce blog pour transmettre mes connaissances à tout développeur, qu’il soit débutant ou expérimenté.

burgundy Bottes Us Marron Taille Couleur Executive Eu Wine 44 Imperials 10 q15SA4xwX
matelass de Bottes chasse de chaussures camouflage vHwRn1qSax
El4280 noir Cs Tia Dune gorge Js Elomi sans armatures Soutien 32 avec armatures
formelles Chaussures Chaussures formelles Chaussures formelles Chaussures formelles formelles Chaussures formelles formelles Chaussures Chaussures Chaussures qPtTfWR