Modern Software Architecture Design Patterns
03.09.2024 , Raum F

Explore strategies for delineating responsibilities within both monolithic and microservice architectures.
This course delves into the transition from procedural code lacking clear layer distinctions to more structured approaches, including Layered, Hexagonal, Onion, and Clean Architectures. Additionally, we'll examine how CQRS and Vertical Slice Architecture can further refine our systems' organization.


The debate over optimal structures for monoliths and microservices — aimed at minimizing maintenance and extension costs — is ongoing and lively.

This course addresses the following key topics:

  • Identifying common challenges in software structure decision-making.
  • Understanding prevalent architecture design anti-patterns and their drawbacks.
  • Unpacking Layered Architecture and its role in concern separation.
  • Exploring Hexagonal, Onion, and Clean Architectures: their interrelations and problem-solving capabilities.
  • Introducing Vertical Slice Architecture and its place in the architectural landscape.
  • Detailing how CQRS can enhance structural refinement.

While the code examples will be Java-based, the principles discussed are largely language-independent, allowing for application across various programming environments.


Zielpublikum

This course is designed for software engineers at any stage in their career who are eager to master modern software architecture design patterns for application in their projects.

Kursziel

By the end of this course, participants will be adept at selecting and implementing the most suitable architecture design pattern for any given context, effectively enhancing their team's or project's development processes.

Voraussetzungen

Participants should have a basic understanding of at least one programming language (e.g., Java) and have their preferred IDE installed. A git repository will be provided for setup on the workshop day or before. Alternatively, code can be supplied via a zip file if git access is an issue.

Infrastruktur

Required materials include a projector, a whiteboard or flip chart, and markers.

𝗭𝘂𝗿 𝗔𝗻𝗺𝗲𝗹𝗱𝘂𝗻𝗴: https://eventfrog.ch/de/p/kurse-seminare/computer-edv/modern-software-architecture-design-patterns-7201139855618716372.html