02 : DevLog

czwartek, 05 marca 2020

Wzorzec strukturalny — Fasada

Klasy się mnożą. Każda ma swój interfejs, swoją inicjalizację, swoje wymagania. Fasada stawia przed nimi prostą, jednolitą ścianę — jeden punkt wejścia, który w środku robi wszystko co trzeba. Jak recepcjonistka, przez którą przechodzi każde pytanie.

Discover

czwartek, 05 grudnia 2019

Wzorzec czynnościowy — Łańcuch odpowiedzialności

Żądanie HTTP wchodzi do ASP.NET i po kolei przechodzi przez logowanie, autoryzację, kompresję — każdy middleware robi swoje i przekazuje dalej. To Łańcuch odpowiedzialności wbudowany w fundament frameworka.

Discover

czwartek, 12 września 2019

Wzorzec strukturalny — Most

Całe życie dziedziczysz, żeby rozszerzyć zachowanie. Most mówi, nie dziedzicz — trzymaj referencję. Dwie hierarchie, jedna referencja między nimi. Każda strona rośnie niezależnie — i żadna nie pyta drugiej o zgodę.

Discover

niedziela, 21 lipca 2019

SOLID — zasada odwracania zależności

Klasa, która zadaje pytania o dane, nie powinna wiedzieć, jak te dane są przechowywane. Moduł wysokiego poziomu powinien zależeć od abstrakcji, nie od szczegółów implementacji. I nie, tu nie chodzi o wstrzykiwanie zależności.

Discover

środa, 15 maja 2019

Wzorzec strukturalny — Adapter

Zewnętrzna biblioteka robi dokładnie to, czego potrzebujesz — ale jej interfejs nie pasuje do reszty systemu. Nie możesz jej zmienić. Adapter rozwiązuje ten problem, opakowując obcą klasę w znajomy interfejs.

Discover

środa, 17 kwietnia 2019

SOLID — zasada segregacji interfejsów

Gruby interfejs wymusza implementację metod, których nikt nie potrzebuje — stara drukarka musi wiedzieć, czym jest faks. Zasada mówi: lepiej kilka małych interfejsów niż jeden, który wie za dużo. Proste, prawda?

Discover

piątek, 29 marca 2019

Wzorzec kreacyjny — Fabryka

Konstruktor w C# ma ograniczenie — jego nazwa zawsze odpowiada nazwie klasy, a dwa konstruktory muszą mieć różne sygnatury. Co zrobić, gdy chcemy tworzyć obiekt z różnych reprezentacji, ale obie przyjmują ten sam typ? Z pomocą przychodzi wzorzec fabryki.

Discover

niedziela, 24 lutego 2019

SOLID — zasada podstawiania Liskov

Kwadrat jest prostokątem — to wie każdy, prawda? Ale czy klasa Square dziedzicząca po Rectangle może zepsuć kod, który działał? Zasada podstawiania Liskov tłumaczy, dlaczego dziedziczenie to nie tylko relacja "jest czymś".

Discover

poniedziałek, 07 stycznia 2019

SOLID — zasada otwarto-zamknięty

Klasa powinna być otwarta na rozszerzenia, ale zamknięta na modyfikacje. Wzorzec Specyfikacji pokazuje jak to osiągnąć — obsługa nowych wymagań bez dotykania istniejącego kodu.

Discover

poniedziałek, 10 grudnia 2018

Zdarzenia

Zdarzenia w C# - od podstaw po ciemną stronę. Poznaj EventHandler, ale też dowiedz się, dlaczego społeczność .NET coraz częściej sięga po Rx.NET, Channels czy MediatR zamiast klasycznych eventów.

Discover