Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Cz.7 Refleksja, Atrybuty.

Podobne prezentacje


Prezentacja na temat: "Cz.7 Refleksja, Atrybuty."— Zapis prezentacji:

1 Cz.7 Refleksja, Atrybuty

2 Przypomnienie zeszłego semestru Co to jest refleksja? Refleksja w C# Pierwsze zadanie Atrybuty Do dzieła!

3 Słowa kluczowe w C# Co to polimorfizm? Jak go osiągnąć MSDN Twoim przyjacielem en-us/library/gg aspx Ewentualnie resharper…

4 Pętla foreach IEnumerable List, Dictionary

5 File, Directory StreamReader, BinaryReader

6

7 RTTI – RunTime Type Information Czy zmienna jest typu int czy string? 1 vs 1 Refleksja pozwala w łatwy sposób zarządzać kodem tak, jakby był danymi.

8 Type GetType() typeof() Kompletna informacja o typie: Nazwa Rodzaj Pola, metody, zdarzenia Atrybuty

9 MethodInfo Nazwa Parametry Zwracany typ Klasa gdzie była zadeklarowana Itp… ConstructorInfo Podobnie Invoke Wywołanie metody lub stworzenie obiektu

10 Typeof(string[]) GetElementType() Wartości enumów Getery i Setery dla property Parametry generyczne

11 Dobieranie się do metod wyżej new StackTrace(); Wykorzystywane w logowaniu st.GetFrame([1,2,,n]).Name I profilowaniu Kosztowne!

12 Parametry linii poleceń Stwórzcie klasę ConsoleApp W niej metodę która przyjmuje obiekt klasy dziedziczącej i args Jak to zrobić statycznie a jak niestatycznie? Sparsować argumenty i ustawić wszystkie property w przekazanym obiekcie Stworzyć właściwą klasę aplikacji i załadować parametry

13 Metadane w kodzie Można dodawać praktycznie na wszystkim Przykłady [Serializable] [Obsolete] [STAThread] By definiować własne dziedziczymy z klasy Attribute Można dodać [AtributeUsage]

14 Poprzedni program ma pewne wady: Wszystkie property są jednakowo traktowane int Size vs int AccountBalance Dodajcie atrybuty ConsoleParam(object defaultValue) ConsoleValidator(Type validator) Zmieńcie metodę parsującą by dostosować ją do nowych atrybutów


Pobierz ppt "Cz.7 Refleksja, Atrybuty."

Podobne prezentacje


Reklamy Google