Przejdź do treści
FullstackDev

Refleksja

Refleksja umożliwia dynamiczne zbadanie typów, składowych i informacji o ich implementacji w czasie wykonywania programu. Pozwala to na znaczne zwiększenie elastyczności kodu i umożliwia dynamiczne modyfikowanie aplikacji w czasie jej działania. Refleksja jest realizowana przy użyciu klas i interfejsów zawartych w namespace System.Reflection.

Najczęstsze zastosowania refleksji to:

  1. Automatyzacja tworzenia instancji obiektów na podstawie nazwy typu.
  2. Pobieranie informacji o typie, właściwościach, metodach i atrybutach obiektu.
  3. Dynamiczne wywoływanie metod obiektów.
  4. Tworzenie bibliotek pluginów, które mogą być rozszerzane przez użytkowników bez modyfikowania kodu biblioteki.
  5. Dynamiczne generowanie kodu.
  6. Obsługa wyjątków i ładowanie klas w czasie wykonywania programu.