Les-variables
Variables
Nommage
Les noms de variables doivent être concis et représentatifs de la nature et de la quantité de la valeur qu'ils contiennent ou contiendront potentiellement.
Noms
✅ A faire
var student = new Student();
❌ A ne pas faire
var s = new Student();
❌ A ne pas faire
var stdnt = new Student();
La même règle s'applique aux expressions lambda :
✅ A faire
students.Where(student => student ... );
❌ A ne pas faire
students.Where(s => s ... );
Pluriels
✅ A faire
var students = new List<Student>();
❌ A ne pas faire
var studentList = new List<Student>();
Noms avec types
✅ A faire
var student = new Student();
❌ A ne pas faire
var studentModel = new Student();
❌ A ne pas faire
var studentObj = new Student();
Null ou valeurs par défaut
Si la valeur d'une variable est sa valeur par défaut, telle que 0 pour int ou null pour les chaînes, et que vous ne prévoyez pas de modifier cette valeur (par exemple, à des fins de test), le nom doit identifier cette valeur.
✅ A faire
Student noStudent = null;
❌ A ne pas faire
Student student = null;
Aussi, ✅ A faire
int noChangeCount = 0;
Mais, ❌ A ne pas faire
int changeCount = 0;
Déclarations
La déclaration d'une variable et son instanciation doivent indiquer le type immédiat de la variable, même si la valeur doit être déterminée ultérieurement.
Types clairs
Si le type du côté droit est clair, utilisez var pour déclarer votre variable
✅ A faire
var student = new Student();
❌ A ne pas faire
Student student = new Student();
Types semi-clairs
Si le côté droit n'est pas clair (mais connu) du type de valeur renvoyé, vous devez déclarer explicitement votre variable avec son type.
✅ A faire
Student student = GetStudent();
❌ A ne pas faire
var student = GetStudent();
Types non clairs
Si le côté droit n'est pas clair et inconnu (tel qu'un type anonyme) du type de valeur renvoyé, vous pouvez utiliser var comme type de variable.
✅ A faire
var student = new
{
Name = "Hassan",
Score = 100
};
Types à propriété unique
Attribuez directement les propriétés si vous déclarez un type avec une seule propriété.
✅ A faire
var inputStudentEvent = new StudentEvent();
inputStudentEvent.Student = inputProcessedStudent;
❌ A ne pas faire
var inputStudentEvent = new StudentEvent
{
Student = inputProcessedStudent
};
Aussi, ✅ A faire
var studentEvent = new StudentEvent
{
Student = someStudent,
Date = someDate
}
❌ A ne pas faire
var studentEvent = new StudentEvent();
studentEvent.Student = someStudent;
studentEvent.Date = someDate;
Organisation
Ventilation
Si une déclaration de variable dépasse 120 caractères, décomposez-la en commençant par le signe égal.
✅ A faire
List<Student> washingtonSchoolsStudentsWithGrades =
await GetAllWashingtonSchoolsStudentsWithTheirGradesAsync();
❌ A ne pas faire
List<Student> washgintonSchoolsStudentsWithGrades = await GetAllWashingtonSchoolsStudentsWithTheirGradesAsync();
Déclarations multiples
Les déclarations qui occupent deux lignes ou plus doivent avoir une nouvelle ligne avant et après pour les séparer des déclarations de variables précédentes et suivantes.
✅ A faire
Student student = GetStudent();
List<Student> washingtonSchoolsStudentsWithGrades =
await GetAllWashingtonSchoolsStudentsWithTheirGradesAsync();
School school = await GetSchoolAsync();
❌ A ne pas faire
Student student = GetStudent();
List<Student> washgintonSchoolsStudentsWithGrades =
await GetAllWashingtonSchoolsStudentsWithTheirGradesAsync();
School school = await GetSchoolAsync();
De plus, les déclarations de variables qui ne comportent qu'une seule ligne ne doivent pas avoir de nouvelles lignes entre elles.
✅ A faire
Student student = GetStudent();
School school = await GetSchoolAsync();
❌ A ne pas faire
Student student = GetStudent();
School school = await GetSchoolAsync();