C# od podstaw
Osiem lekcji od składni i systemu typów do architektury wtyczek. Każda kończy się quizem i zadaniem, które uruchomisz w przeglądarce.
- Składnia i system typów C#
Średniki, klamry, stos vs sterta i parsowanie. Pierwszy krok w C# z interaktywnym quizem i mini-zadaniem na koniec.
- Programowanie obiektowe w C# - klasy, dziedziczenie, polimorfizm
Klasy i obiekty, hermetyzacja przez właściwości, dziedziczenie z virtual/override, polimorfizm w praktyce i interfejsy jako kontrakty. Druga część kursu C#.
- Generyki i kolekcje w C# - List, Dictionary, ograniczenia typów
Dlaczego powstały generyki, jak działają List i Dictionary od podszewki oraz jak pisać własne bezpieczne kontenery z ograniczeniami where. Trzecia część kursu C#.
- LINQ w C# - lambdy, Where, Select i leniwa ewaluacja
Wyrażenia lambda, operator zapytań LINQ, łączenie metod w łańcuchy oraz pułapka leniwej ewaluacji - jak filtrować, sortować i przekształcać kolekcje jednym, czytelnym łańcuchem wywołań. Czwarta część kursu C#.
- Delegaty i zdarzenia w C# - Action, Func, event, EventArgs
Delegaty jako bezpieczne wskaźniki na metody, gotowe Action/Func/Predicate, wzorzec publisher-subscriber, słowo kluczowe event oraz oficjalny standard .NET z EventHandler i EventArgs. Szósta część kursu C#.
- Wyjątki i IDisposable w C# - try-catch-finally, własne wyjątki, using
Obsługa błędów w C# - try-catch-finally, throw i throw vs throw ex, filtry wyjątków, własne klasy Exception, garbage collector kontra zasoby niezarządzane, IDisposable, klasyczny i nowoczesny using. Siódma część kursu C#.
- Refleksja i atrybuty w C# - System.Reflection, Type, Activator, własne atrybuty
Odczytywanie metadanych w trakcie wykonania, dynamiczne tworzenie obiektów i wywoływanie metod przez refleksję, atrybuty jako żółte karteczki dla kodu, projektowanie własnych atrybutów z AttributeUsage. Ósma część kursu C#.
- Architektura pluginów w C# - Assembly, dynamiczne ładowanie DLL, AssemblyLoadContext
Praktyczne zastosowanie refleksji - aplikacja rozszerzalna o pluginy ładowane z plików DLL w trakcie wykonania. Assembly, Assembly.LoadFrom, AssemblyLoadContext, izolacja wersji oraz pułapki produkcyjne. Dziewiąta część kursu C#.
Egzamin z całego kursu
12 pytań ze wszystkich lekcji. Zdaj go po przeczytaniu całości - wynik zostaje w przeglądarce i widać go na stronie „Zapisane”.