ÚjDomain Driven Design és implementációja Java nyelven
Komplex alkalmazások részekre bontása és megvalósítása bevált minták alapján
Ismertető
Egy jó alkalmazás alapja a jó terv. Egy komplex üzleti probléma feltárása, a megoldás megtervezése, és annak kódba ültetése nem egyszerű feladat. Hogyan bontsuk részekre a problémát, mi alapján határoljuk el a különböző komponenseket és ezeket hogyan illesszük egymáshoz? Ezek a mai szoftverfejlesztés legnagyobb kihívásai, mely különös nagy fontosságot kapott ma a microservice-ek világában, de kiemelten megjelennek a modularizált alkalmazások esetén is.
A DDD ezen kihívásokra próbál megoldási javaslatokat, mintákat, legjobb gyakorlatokat adni.
A DDD különböző programozási nyelvekre átültetése, technológiákkal való integrációja sem egyszerű, ez a tanfolyam ezért erre ad iránymutatást.
Tematika
- Mikor és hol vágjunk?
- Evolutionary design
- OOP fogalmak fontossága
- Rossz felépítés gyakori okai
- Strategic Design Tools
- Problem space
- Domains, subdomains: core domain, supporting domains, generic domains
- Solution space
- Domain model
- Bounded context
- Ubiquitous language
- Domain expert: mental model
- Context mapping
- Tactical Design Tools
- Value objects
- Entities
- Aggregate
- Factory
- Repository
- Event storming
- DDD és a Clean Architecture kapcsolata
- Service
Szükséges előképzettség
Alapszintű Java programozási ismeretek.