Zrozumienie biznesu to klucz do sukcesu programisty
1 godz. 30 min · Full-stack i Programowanie
Rafał PiekaraSoftware KomandosZgłębimy podstawy Domain Driven Design, skupiając się na zrozumieniu, czym jest domena i jakie role pełnią subdomeny w rozumieniu biznesu i projektowaniu oprogramowania. Dowiesz się, jak identyfikować i definiować domenę oraz subdomeny w kontekście biznesowym, co jest kluczowe dla efektywnego modelowania i implementacji systemów.
Skoncentrujemy się na jednym z kluczowych aspektów Domain Driven Design - definiowaniu granic kontekstów (Bounded Contexts). Nauczysz się, jak precyzyjnie wyznaczać te granice, co pozwala na lepszą separację i integrację różnych części systemu. Omówimy, jak wyznaczone granicę wpływają na jasność komunikacji w zespole oraz jak ułatwiają zrozumienie modelu biznesowego.
Spojrzymy na strategiczne wzorce DDD, skupiając się na kluczowych konceptach takich jak Subdomena i Bounded Context. Zrozumienie i umiejętność ich identyfikacji w strukturach biznesowych to podstawowa umiejętność w projektowaniu domenowym. Nie pominiemy też tematów pobocznych jak kontekst schizofreniczny czy Prawo Conwaya. Każdy z tych elementów pomoże Ci lepiej zrozumieć zastosowanie Domain Driven Design w praktyce.
Wzorce taktyczne są fundamentalne dla praktycznego modelowania i implementacji oprogramowania. O ile wzorce strategiczne wyrażają koncepcję, to wzorce taktyczne dotykają, tego, co kochają programiści i programistki czyli kodu. Zobaczysz jak i po co je stosować i jak mogą wspomagać spójność oraz transakcyjność danych.
Wszystko fajnie z tym DDD, ale jak to poukładać? Na to też znalazło się miejsce w kursie. Cały moduł poświęcimy na zapoznanie się z przykładową strukturą, organizacją plików i folderów aplikacji opartej o Domain Driven Design. Nie musisz się już zastanawiać, gdzie upchnąć Twoje klasy. Wszystko stanie się przejrzyste, intuicyjne i oczywiste.
Kurs powstał z myślą o programistach, architektach, liderach technicznych, a także ludziach biznesu, którzy potrzebują pogłębić swoją wiedzę o projektowaniu oprogramowania skoncentrowanego na domenie biznesowej. Niezależnie od tego, czy jesteś na początku drogi z DD, czy masz już trochę doświadczenia i chcesz usystematyzować lub odświeżyć wiedzę - ten kurs jest dla Ciebie!
Przerobiliśmy podstawy Domain Driven Design, ale teraz pora na pogłębienie tej
wiedzy i żeby pogłębić wiedzę i odświeżać sobie cały czas to, o czym rozmawialiśmy.
Zostawiam Ci kilka sugerowanych źródeł pomocniczych.
Pierwszym źródłem i absolutną podstawą jest Patterns Principles and Practices of
Domain Driven Design z kotami Latarnika Thun, czyli książka, która
powszechnie nazywa się PPP of DDD.
I jest to taka gruba pozycja, w której znajdziesz dużo praktycznych przykładów
zastosowania wszystkich wzorców i uważam, że jest to absolutna podstawa.
Jeśli chcesz dalej drążyć temat i lepiej rozumieć koncepcję Domain Driven Design.
Nie byłoby Domain Driven Design i gdyby nie Eric Evans i jego książka Domain
Driven Design zapanują nad złożonym systemem informatycznym, która uchodzi
niejako za manifest i początek zdefiniowania w ogóle koncepcji DDD.
To też jest istotna pozycja.
Jest też druga pozycja DDD dla architektów oprogramowania w Ona Vernon, a gdzie
Vernon również podejmuje ten temat, więc warto tę pozycję również przeczytać.
I na koniec polecam Ci kurs Droga Nowoczesnego Architekta.
Jest to zaawansowany kurs dla architektów oprogramowania, ale znajdują się tam też
bardzo dobrze przygotowane materiały z Domain Driven pisane, gdzie wszystkie te
koncepty są pogłębiane i wyjaśnione, więc to jest dobry punkt.
Dobra droga, żeby dalej się rozwijać, iść w tym kierunku.