Chapitre 13. Réflexion
Cet ouvrage a été traduit à l'aide de l'IA. Tes réactions et tes commentaires sont les bienvenus : translation-feedback@oreilly.com
Le CLR en sait beaucoup sur les types que nos programmes définissent et utilisent. Il exige que tous les assemblages fournissent des métadonnées détaillées, décrivant chaque membre de chaque type, y compris les détails de l'implémentation privée. Il s'appuie sur ces informations pour exécuter des fonctions essentielles, telles que la compilation JIT et le ramassage des ordures. Cependant, il ne garde pas ces connaissances pour lui. L'API de réflexion permet d'accéder à ces informations détaillées sur les types, de sorte que ton code peut découvrir tout ce que le système d'exécution peut voir. De plus, tu peux utiliser la réflexion pour faire bouger les choses. Par exemple, un objet de réflexion représentant une méthode ne décrit pas seulement le nom et la signature de la méthode, mais il te permet également de l'invoquer. Et tu peux aller encore plus loin et générer du code au moment de l'exécution.
La réflexion est particulièrement utile dans les frameworks extensibles, car ils peuvent l'utiliser pour adapter leur comportement au moment de l'exécution en fonction de la structure de ton code. Par exemple, le panneau Propriétés de Visual Studio utilise la réflexion pour découvrir les propriétés publiques d'un composant. Ainsi, si tu écris un composant qui peut apparaître sur une surface de conception, comme un élément d'interface ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access