Blog

Marcin Markowski

Polityka to Building Block z DDD, który pozwala otwierać model na rozbudowę w tych miejscach, w których biznes może tego faktycznie potrzebować. Pojedyncze Polityki zwykle są stosunkowo proste, ich kompozycja może jednak modelować bardzo złożone wymagania biznesowe. Jak zaimplementować je w C#, [...]

więcej
Marcin Markowski

Value Object to bardzo użyteczny Building Block z DDD. Jego użycie znacznie zwiększa ekspresywność kodu i redukuje ilość defensywnej logiki. Jak składnia C# wpiera implementację Value Objectów? Których konstrukcji językowych używać, żeby maksymalnie zwiększyć czytelność? Na szczęście C# ma w [...]

więcej
Marcin Markowski

W DDD najważniejsze jest oczywiście poznanie naszej domeny, zbudowanie Ubiquitous Language i Modelu wiernie odzwierciedlającego biznes. Na koniec dnia trzeba jednak ubrać to w kod. Ten projekt jest ilustracją różnych podejść do implementacji wzorców znanych z DDD i nie tylko. Zapraszamy na nasz [...]

więcej
Marcin Markowski

Projekty i namespace’y to niedoceniane elementy, które mogą znacząco poprawić czytelność naszego kodu. Warto stosować je w sposób przemyślany, a nie „jakkolwiek, bo to przecież nieistotne”. Kod czyta się co najmniej 10 razy częściej, niż się go modyfikuje. Warto więc [...]

więcej
Marcin Markowski

Czy mikroserwisy to Bounded Contexty? Czy modularyzacja na poziomie architektury systemowej powinna wpływać na sposób wdrożenia? Co tak właściwie chcemy osiągnąć wprowadzając podziały na różnych poziomach architektury? Granice systemowe Termin architektura systemowa wskazuje, że wprowadzone w [...]

więcej
Marcin Markowski

Architektura nie musi być kosztowna, trzeba tylko podejść do jej tworzenia w rozsądny sposób. Istotne jest, żeby nie popaść w over-engineering z jednej strony i kompletny chaos z drugiej. Na szczęście są zasady i narzędzia, które mogą nam w tym istotnie pomóc. Kluczowe jest poznanie biznesu [...]

więcej
Marcin Markowski

Na poziomie aplikacji architektura powinna wspierać modelowanie domeny czyli serca całego systemu. Czym powinna się charakteryzować architektura, żeby wspierać podejście Domain First? Czy tradycyjne warstwy są dobrą odpowiedzią na te potrzeby? Warstwy Rozpoczęcie pracy nad systemem modelowania [...]

więcej
Marcin Markowski

Jak podejść do projektowania architektury systemu ? Co trzeba określić już na start, a co może poczekać ? Od czego mogą zależeć wybory architektoniczne i kiedy jest najlepszy moment na ich podjęcie ? Pytania te nie mają niestety jednej prostej odpowiedzi. Przyjęte podejście ma jednak niezwykle [...]

więcej
Marcin Markowski

Kiedy możemy powiedzieć, że architektura naszego systemu jest dobra ? Czy da się znaleźć rozwiązanie, które będzie się dobrze sprawdzać w wielu systemach przez długi czas ? Dobre określenie tego czego się szuka jest kluczowe dla sukcesu poszukiwań. Dlatego warto zastanowić czego oczekujemy od [...]

więcej