Évaluation des compétences

Langage C# — Auto-évaluation · Clean Code (points clés)

Compétences C#

Niveau (0 → 5)
Thème Compétence Niveau
1. Introduction à C# et .NET Langage orienté objet et multi‑paradigme 4
.NET SDK / runtime 4
Outils : Visual Studio, VS Code, Rider 4
NuGet 4
Structure d’un projet : .csproj, Target Framework 4
2. Bases du langage Types primitifs 5
Variables (var, const) 5
Conditions (if, switch, switch expression) 5
Boucles (for, foreach, while) 5
Méthodes 5
Exceptions 5
3. OOP en C# Classes, structs, records 4
Propriétés 4
Encapsulation & modificateurs 4
Héritage 4
Interfaces 4
Immutabilité 4
Constructeurs (dont primaires) 4
4. Paradigme fonctionnel Lambdas 4
Méthodes d’extension 4
Pattern matching 3
LINQ 2
IEnumerable / IQueryable 2
5. Gestion mémoire Garbage Collector 4
IDisposable / using 2
Types valeur / référence 5
Boxing / unboxing 3
6. Asynchronisme async/await 4
Task vs Thread 4
Gestion des erreurs async 2
7. Structuration du code Namespaces 4
Solutions / projets 4
Dependency Injection 2
8. Design Architecture MVVM (auto‑éval. “2 -- 3”) 3
MVC 0

Clean Code — Points clés

Niveau (0 → 5)
Catégorie Point clé Niveau
1. Nommage Noms explicites 4
Cohérents avec le domaine 4
Méthodes = verbes / Classes = noms 4
2. Méthodes Courtes 4
Une seule responsabilité 4
Peu de paramètres 4
3. Classes Une seule responsabilité 4
Composition > héritage 4
Immutabilité (records) 4
4. Gestion des erreurs Exceptions 4
Messages clairs 4
Pas de codes d’erreur
5. Commentaires Commenter le pourquoi 5
Code auto‑documenté 4
Éviter les commentaires inutiles 5
6. Formatage Style cohérent 4
Code aéré 4
Un fichier par classe 5
7. Tests Tests unitaires (xUnit) 3
Rapides et isolés 0
8. Architecture SOLID 3
Découplage via interfaces 3
Dependency Inversion 2