- ADRArchitecture
- Architecture Decision Record : court document qui garde la trace d'une décision technique, de son contexte et de ses conséquences.
- AgrégatArchitecture
- Groupe d'objets métier modifiés ensemble et gardés cohérents par un objet racine (ex. une commande et ses lignes).
- ANCMIIS
- ASP.NET Core Module : module IIS (installé par le Hosting Bundle) qui charge une appli ASP.NET Core.
- awaitConcurrence
- Attend la fin d'une opération sans bloquer le thread : celui-ci repart servir d'autres tâches et le code reprend quand le résultat arrive.
- Backoff exponentielRésilience
- Attendre de plus en plus longtemps entre deux tentatives : 1 s, 2 s, 4 s…
- BFFSécurité
- Backend For Frontend : petit serveur dédié au front qui garde les jetons côté serveur et utilise un cookie sécurisé.
- Bounded ContextArchitecture
- Frontière dans laquelle un mot métier a un sens unique et précis.
- BoxingLangage
- Copie d'une valeur (int, struct) dans un objet sur le tas, par exemple pour la ranger dans une variable object. Chaque boxing coûte une allocation.
- CanaryQualité
- Déploiement progressif : la nouvelle version reçoit d'abord une petite part du trafic, puis tout si tout va bien.
- CardinalitéObservabilité
- Nombre de valeurs distinctes d'une étiquette de métrique. Trop élevée, elle fait exploser coûts et stockage.
- cgroupsConteneurs
- Fonction du noyau Linux qui limite la mémoire et le CPU d'un groupe de processus, donc d'un conteneur.
- CI/CDQualité
- Intégration continue (build et tests à chaque commit) et déploiement continu (mise en production automatisée).
- Circuit breakerRésilience
- Disjoncteur : après trop d'échecs, on arrête d'appeler un service en panne pendant un moment pour le laisser récupérer.
- CLRRuntime
- Common Language Runtime : le moteur qui exécute les applis .NET (chargement du code, JIT, ramasse-miettes, sécurité des types).
- Compte de serviceCloud
- Identité non humaine attribuée à une appli pour accéder aux autres services cloud.
- Concurrence optimisteDonnées
- On ne verrouille rien à la lecture ; à l'écriture, on vérifie que la donnée n'a pas changé entre-temps, sinon on signale un conflit.
- Condition de courseConcurrence
- Bug qui dépend de l'ordre d'exécution de traitements simultanés : le résultat change d'une exécution à l'autre.
- ConteneurConteneurs
- Processus isolé qui embarque l'appli et ses dépendances, et tourne de la même façon sur n'importe quelle machine.
- CORSSécurité
- Règles qui autorisent un site web d'une autre origine à appeler votre API depuis le navigateur.
- CQRSArchitecture
- Séparer les opérations qui modifient (commandes) de celles qui lisent (requêtes), chacune optimisée pour son rôle.
- Data ProtectionSécurité
- API ASP.NET Core qui chiffre cookies et jetons. Ses clés doivent être partagées entre toutes les instances.
- Dead-letterRésilience
- File où partent les messages qui échouent après plusieurs tentatives, pour analyse.
- DécorateurConception
- Objet qui enveloppe un autre objet de même interface pour lui ajouter un comportement (cache, log) sans le modifier.
- DéléguéLangage
- Variable qui contient une méthode. Func (renvoie une valeur) et Action (ne renvoie rien) en sont les formes courantes.
- Démarrage à froidCloud
- Délai du premier appel quand une nouvelle instance doit démarrer avant de répondre.
- Dépendance captiveConception
- Un service à longue durée de vie (singleton) garde une référence vers un service à courte durée de vie (scoped), qui n'est alors jamais libéré.
- Design patternConception
- Solution connue et nommée à un problème de conception qui revient souvent.
- Dette techniqueÉquipe
- Coût futur des raccourcis pris aujourd'hui : chaque évolution devient plus lente tant qu'on ne rembourse pas.
- DNSCommunication
- Annuaire d'Internet : traduit un nom (api.shop.fr) en adresse IP.
- DTOAPI
- Data Transfer Object : objet simple qui sert uniquement à transporter des données, par exemple dans une réponse d'API.
- EndpointAPI
- Point d'entrée de l'API : une URL et une méthode HTTP associées au code qui y répond.
- Famine du ThreadPoolConcurrence
- Tous les threads du pool sont bloqués à attendre : les nouvelles requêtes s'empilent et la latence explose.
- Feature flagÉquipe
- Interrupteur de configuration qui active ou désactive une fonctionnalité sans redéployer.
- GC (ramasse-miettes)Runtime
- Garbage Collector : il libère automatiquement la mémoire des objets que plus aucune variable n'utilise.
- GénériqueLangage
- Code écrit une seule fois pour plusieurs types, grâce à un paramètre de type comme T dans List<T>.
- gRPCCommunication
- Protocole d'appel entre services, binaire et rapide, fondé sur HTTP/2 et un contrat Protobuf.
- HSTSSécurité
- En-tête qui oblige le navigateur à n'utiliser que HTTPS pour ce site.
- HTTP.sysIIS
- Pilote du noyau Windows qui écoute les ports HTTP et transmet les requêtes à IIS.
- IAMCloud
- Identity and Access Management : qui (personne ou compte de service) a le droit de faire quoi sur quelle ressource.
- ICUConteneurs
- Bibliothèque de données linguistiques (formats de date, tri, cultures comme fr-FR) utilisée par .NET sous Linux.
- IdempotentAPI
- Une opération est idempotente si la répéter donne le même résultat que la faire une seule fois.
- IDORSécurité
- Faille où l'on accède aux données d'un autre en changeant simplement un identifiant dans l'URL.
- ILRuntime
- Intermediate Language : langage intermédiaire produit par le compilateur C# ou VB. Le runtime le traduit ensuite en instructions pour le processeur.
- Image chiseledConteneurs
- Image Ubuntu réduite au strict nécessaire, sans shell ni gestionnaire de paquets : plus petite et moins exposée.
- Infrastructure as CodeCloud
- Décrire serveurs, réseaux et services dans des fichiers versionnés (Terraform) au lieu de cliquer dans une console.
- Injection de dépendances (DI)Conception
- Un objet reçoit ses dépendances (base, logger…) de l'extérieur au lieu de les créer lui-même. On peut ainsi les remplacer, notamment en test.
- Interblocage (deadlock)Concurrence
- Deux traitements s'attendent mutuellement et aucun ne peut avancer : l'appli se fige.
- JITRuntime
- Compilation « juste à temps » : l'IL d'une méthode est traduit en code machine la première fois qu'elle est appelée.
- JitterRésilience
- Petit délai aléatoire ajouté entre les tentatives pour que tous les clients ne réessaient pas au même instant.
- JWTSécurité
- JSON Web Token : jeton signé qui transporte l'identité et les droits d'un utilisateur.
- KestrelAPI
- Le serveur web intégré à ASP.NET Core, multiplateforme.
- KubernetesConteneurs
- Plateforme qui déploie, surveille, redémarre et met à l'échelle des conteneurs sur un ensemble de machines.
- LINQLangage
- Language Integrated Query : syntaxe C# pour filtrer, trier et transformer des collections ou des tables.
- LOHRuntime
- Large Object Heap : zone mémoire réservée aux gros objets (85 000 octets et plus), nettoyée moins souvent que le reste.
- LTS / STSRuntime
- Long-Term Support (3 ans de correctifs) et Standard-Term Support (2 ans). Les versions paires de .NET sont LTS.
- MicroservicesArchitecture
- Découpage en petits services déployés indépendamment, chacun avec sa base. Puissant mais coûteux à exploiter.
- MiddlewareAPI
- Maillon de la chaîne de traitement d'une requête HTTP : chacun fait une tâche (sécurité, logs…) puis passe au suivant.
- Monolithe modulaireArchitecture
- Une seule application déployée, mais découpée en modules aux frontières strictes. Bon compromis avant les microservices.
- MVVMClient lourd
- Model-View-ViewModel : sépare l'affichage (View) de l'état et des actions (ViewModel) pour tester sans interface.
- N+1Données
- Anti-pattern : une requête pour charger une liste, puis une requête par élément. 100 commandes = 101 requêtes.
- Native AOTRuntime
- Compilation anticipée : tout le code est traduit en code machine à la publication. Démarrage très rapide, mais pas de génération de code à l'exécution.
- OIDCSécurité
- OpenID Connect : protocole standard d'authentification par un fournisseur d'identité (Entra ID, Keycloak…).
- OOMKilledConteneurs
- Conteneur tué par le système car il a dépassé sa limite mémoire (Out Of Memory).
- OpenTelemetryObservabilité
- Standard ouvert pour produire et exporter logs, métriques et traces, quel que soit l'outil de visualisation.
- ORMDonnées
- Object-Relational Mapper : outil qui fait correspondre classes C# et tables SQL, comme EF Core.
- OutboxRésilience
- Les messages à publier sont enregistrés dans la même transaction que les données, puis envoyés par un relais : rien n'est perdu.
- OWASPSécurité
- Fondation qui publie notamment le Top 10 des risques de sécurité des applications web.
- PKCESécurité
- Protection ajoutée à OAuth pour les applis qui ne peuvent pas garder de secret (mobile, bureau, SPA).
- PolymorphismeLangage
- Un même appel (f.Aire()) se comporte différemment selon le type réel de l'objet (cercle, carré…).
- Pool d'applicationsIIS
- Processus isolé (w3wp.exe) dans lequel IIS fait tourner une ou plusieurs applis, avec sa propre identité.
- Post-mortemÉquipe
- Analyse écrite après un incident : ce qui s'est passé, pourquoi, et quelles actions pour éviter que ça recommence.
- ProblemDetailsAPI
- Format JSON standard (RFC 9457) pour décrire une erreur renvoyée par une API.
- ProtobufCommunication
- Format binaire compact de Google, décrit dans un fichier .proto à partir duquel le code client et serveur est généré.
- Pub/SubCloud
- Service de messagerie de Google : un émetteur publie, les abonnés reçoivent, sans se connaître.
- RCSIDonnées
- Read Committed Snapshot Isolation (SQL Server) : les lectures voient une version cohérente des données sans bloquer les écritures.
- ReadyToRunRuntime
- Format de publication qui pré-compile une partie du code en natif tout en gardant l'IL, pour démarrer plus vite.
- RESTAPI
- Style d'API web où l'on manipule des ressources (URL) avec les méthodes HTTP (GET, POST, PUT, DELETE).
- RollbackQualité
- Retour rapide à la version précédente quand un déploiement pose problème.
- SagaRésilience
- Processus métier en plusieurs étapes réparties entre services, avec des actions d'annulation si une étape échoue.
- Scale-to-zeroCloud
- Le service descend à zéro instance sans trafic : on ne paie rien, mais le premier appel subit un démarrage à froid.
- SémaphoreConcurrence
- Compteur de places : il laisse passer au plus N traitements en même temps, les suivants attendent qu'une place se libère.
- SignalRCommunication
- Bibliothèque ASP.NET Core de communication temps réel : le serveur pousse des messages vers les clients connectés.
- SIGTERMConteneurs
- Signal envoyé à un processus pour lui demander de s'arrêter proprement avant d'être tué.
- SLI / SLOObservabilité
- SLI : un indicateur mesuré (taux de succès). SLO : l'objectif fixé sur cet indicateur (99,9 % sur 30 jours).
- SOLIDLangage
- Cinq principes de conception orientée objet : responsabilité unique, ouvert/fermé, substitution de Liskov, ségrégation des interfaces, inversion des dépendances.
- Sonde (probe)Conteneurs
- Vérification périodique par Kubernetes : le conteneur est-il démarré, vivant, prêt à recevoir du trafic ?
- SpanObservabilité
- Morceau d'une trace : une opération chronométrée (un appel SQL, un appel HTTP).
- SSRFSécurité
- Faille où le serveur est poussé à appeler une URL interne choisie par l'attaquant.
- Strangler figCommunication
- Migration progressive : une façade redirige peu à peu les routes vers le nouveau système jusqu'à ce que l'ancien ne serve plus à rien.
- SynchronizationContextConcurrence
- Mécanisme qui fait reprendre le code après un await sur un thread précis, typiquement le thread de l'interface graphique.
- Table virtuelle (vtable)Langage
- Table associée à chaque type qui indique quelle version d'une méthode virtuelle appeler. C'est elle qui rend le polymorphisme possible.
- Tas managéRuntime
- Zone mémoire où vivent les objets créés avec new. C'est le ramasse-miettes qui la nettoie.
- TestcontainersQualité
- Bibliothèque qui démarre une vraie base de données dans un conteneur le temps d'un test.
- ThreadConcurrence
- Fil d'exécution : un « bras » du processus qui exécute du code. Un processus en possède plusieurs.
- ThreadPoolConcurrence
- Réserve de threads réutilisables gérée par .NET et partagée par toutes les requêtes et tâches asynchrones.
- TLSCommunication
- Protocole qui chiffre la connexion : c'est le « S » de HTTPS.
- Type valeur / type référenceLangage
- Un type valeur (int, struct) est copié quand on l'affecte. Un type référence (class) ne copie que l'adresse : deux variables peuvent pointer sur le même objet.
- Value ObjectArchitecture
- Objet défini uniquement par ses valeurs, sans identité, et immuable : un montant, une adresse.
- WASIIS
- Windows Process Activation Service : démarre, surveille et recycle les processus des applis IIS.
- WCFCommunication
- Windows Communication Foundation : ancien framework de services de .NET Framework. CoreWCF en reprend une partie sur .NET moderne.
- WebSocketCommunication
- Connexion réseau permanente et bidirectionnelle entre navigateur et serveur.
- Workload IdentityCloud
- Mécanisme GCP qui donne une identité cloud à une appli (GKE, GitHub Actions) sans fichier de clé à stocker.
- XSSSécurité
- Injection de JavaScript malveillant dans une page vue par d'autres utilisateurs.
- YARPCommunication
- Yet Another Reverse Proxy : bibliothèque Microsoft pour construire un proxy inverse en .NET.
Guide .NET · 18 · Synthèse
Publié le · par Mathieu Vaes
Glossaire
Les termes techniques du guide, expliqués simplement. Dans les chapitres, les mots soulignés en pointillés affichent leur définition au survol, au clavier ou au toucher.
Chapitres du guide
Un projet .NET à cadrer ou à reprendre ?
API REST documentées et testées, applications ASP.NET MVC (y compris VB.NET), migration de services anciens vers une architecture claire : parlons de votre code.