DevCezz

Programistyczny blog dla Ciebie

Architektura

Wzorzec Transactional Outbox

Tworzone aplikacje często muszą informować swoich użytkowników o jakimś zdarzeniu poprzez SMS czy email. Powodem może być wystawienie faktury, potwierdzenie złożenia rezerwacji czy też nowa promocja. Co jednak w przypadku, gdy chcemy mieć pewność, że wiadomość nie dotrze do adresata…

W czym pomoże nam Value Object?

Value Object, jak sama nazwa wskazuje, jest obiektem przechowującym jakąś wartość. Ta koncepcja pomaga nam nadać znaczenie danej liczbie bądź literałowi czy też ich grupie. Zastanów się czym jest dla Ciebie cyfra 3. Jest to miesiąc marzec? Ilość produktów? A…

Refleksja + CQRS = Niezła mieszanka!

W ostatnim wpisie poruszyłem temat CQRS z perspektywy laika. Napisałem, że chciałbym zaimplementować mechanizm znaleziony na stronie devstyle w swoim kodzie. Byłem przez to zmuszony do użycia po raz pierwszy refleksji i muszę Wam powiedzieć… ME LIKEY! Utworzenie znacznikowych interfejsów…

CQRS okiem laika

Koncepcja CQRS (Command Query Responsibility Segregation) jest dla mnie nowością. W teorii oczywiście spotykałem się już z nią wcześniej czytając artykuły na blogach czy też oglądając prelekcje znalezione w Internecie. Jednak nie miałem okazji, aby zobaczyć i zastosować ją w…

Obecne architektury: Architektura serverless

Na deser przedstawię architekturę opartą o rozwiązania chmurowe, czyli serverless. Jest to dosyć świeża koncepcja tworzenia oprogramowania, która powstała z myślą o tym nie przejmować się w ogóle infrastrukturą. Zespół deweloperski odpowiedzialny jest tylko za to, aby stworzyć aplikację oraz…

Obecne architektury: Architektura reaktywna

Architektura reaktywna jest niczym innym jak systemem (najczęściej rozproszonym) opartym na komunikacji pomiędzy niezależnymi usługami za pomocą asynchronicznych komunikatów. Powstała w głównej mierze w oparciu o The Reactive Manifesto (responsive, resilient, elastic, message driven). Ciężko jednak powiedzieć w jaki sposób…

Obecne architektury: Architektura mikroserwisowa

Przychodzi taki moment w życiu aplikacji, kiedy zaczyna cieszyć się ona coraz większą popularnością. Wówczas zwiększa się liczba żądań od użytkowników, które należy obsłużyć, co powoduje zmianę rodzajów problemów do rozwiązania. Nie można myśleć już tylko o funkcjonalności oprogramowania, ale…

Obecne architektury: Architektura heksagonalna

Co by się stało, gdyby dzisiaj przyszedł do Ciebie biznes i powiedziałby, żeby w rozwijanej aplikacji zrezygnować z głównego frameworka (jakim jest np. Spring) i zastąpić go innym? Wiem, że to mało prawdopodobny scenariusz, ale jednak istnieje ryzyko, że mogłoby…

Obecne architektury: Architektura DDD

W poprzednim wpisie skupiłem się na architekturze warstwowej, która wydaje się najprostszą możliwą opcją tworzenia oprogramowania. Dzisiaj chciałbym przedstawić bardzo popularną ówcześnie technikę Domain-Driven Design. Nie jest ona co prawda architekturą, ale z racji dużej ilości wytycznych w niej zawartych…

Obecne architektury: Architektura warstwowa

Obecnie w branży IT istnieje ogromny przekrój dostępnych rozwiązań dla szkieletów aplikacji biznesowych. Mowa tutaj oczywiście o architekturze. Możemy wybierać pomiędzy koncepcją systemów rozproszonych czy np. programowania reaktywnego. Jednak czy wybór architektury dla naszego projektu powinien być uzależniony od panujących…