Cały czas w tematyce obiektowości. Notatka opisuje mechanizm inicjalizacji obiektów z wykorzystaniem konstruktorów wraz z zastosowaniem base oraz this, podkreślając, że konstruktory nie są dziedziczone, ale mogą być wywoływane w klasach pochodnych, co pozwala na właściwe zainicjowanie obiektów w hierarchii dziedziczenia.
Kontynuacją notatek dotyczących dziedziczenia są metody wirtualne oraz abstrakcyjne, czyli takie, których implementacja może zostać nadpisana przez klasy pochodne, umożliwiając elastyczne dostosowanie zachowania obiektów w hierarchii klas.
Discover
Dziedziczenie, czyli wielokrotne stosowanie raz napisanego kodu jest popularnym mechanizmem stosowanym w wielu językach programowania obiektowego, również C#. To podejście pozwala na efektywne zarządzanie i rozwijanie kodu, zwiększając jego ponowną re-użyteczność.
Discover
Kilka słów o klasie Tuple będącą kontenerem dla zbioru wartości o określonym rozmiarze, czyli coś pomiędzy tablicą a kolekcją. Dzięki swej elastyczności, Tuple umożliwia szybkie grupowanie różnotypowych danych w jednej, łatwo dostępnej strukturze, zachowując przy tym wygodę i prostotę w użyciu.
Po omówieniu podstaw interfejsów kolekcji w .NET, teraz skupimy się na konkretnych typach kolekcji, takich jak Collection<T>, ReadOnlyCollection<T>, Dictionary<TKey, TValue>, i wiele innych, wraz z ich zastosowaniami i różnicami. Przejdziemy również przez kolekcje współbieżne, oferujące bezpieczeństwo operacji w środowiskach wielowątkowych.
W niniejszej notatce zgłębiamy tematykę iteratorów w C#, które umożliwiają generowanie sekwencji wartości za pomocą instrukcji yield return. Przybliżamy sposób działania i zastosowania tej składni, przedstawiając przykłady jej praktycznego wykorzystania w celu zrozumienia, jak iterator może zrewolucjonizować sposób przetwarzania kolekcji danych, pozwalając na elastyczne generowanie i przekazywanie wartości na żądanie.