18

18. Refleksja i metadane

Jak widzieliśmy w poprzednim rozdziale, program C# kompiluje się do zestawu zawierającego metadane, kod skompilowany i zasoby. Przeglądanie metadanych i kodu skompilowanego w środowisku wykonawczym nazywane jest mechanizmem refleksji.

Kod skompilowany w zestawie mieści prawie całą zawartość pierwotnego kodu źródłowego. Tracone są niektóre informacje, takie jak nazwy zmiennych lokalnych, komentarze i dyrektywy preprocesora. Odzwierciedlanie pozwala jednak uzyskać dostęp właściwie do wszystkiego innego, umożliwiając nawet napisanie dekompilera.

Wiele usług dostępnych w .NET i udostępnianych przez C# (takich jak: dynamiczne przypisywanie, serializacja i wiązanie danych) jest uzależnionych od obecności metadanych. Nasze ...

Get C# 9 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.