Logbook of Learning Domain-Driven Design: Day 5
17 February 2025
In this article, I will discuss the concept of Country within the framework of a Supporting Domain, using a Domain Country as an example. I will also detail the exposure of an API that allows retrieving information about a Country and verifying its existence. I will begin by revisiting the…
Logbook of Learning Domain-Driven Design: Day 4
27 January 2025
After three theory-focused articles – essential for laying a solid foundation – today, I’m offering a concrete example: user authentication. This article slightly diverges from Domain-Driven Design (DDD) to emphasize the implementation and use of Hexagonal Architecture and CQRS. While I will briefly mention the User Entity the focus will…
Logbook of Learning Domain-Driven Design: Day 3
13 January 2025
In the previous articles, I introduced the structure of the project and the fundamental concepts of DDD, such as Hexagonal Architecture, CQRS, and Ubiquitous Language. With these foundations laid, it’s time to dive into the heart of the subject: Domain-Driven Design. Here’s a series of essential definitions related to DDD….
Logbook of Learning Domain-Driven Design: Day 2
30 December 2024
In my previous article, I introduced the basic concepts of Domain-Driven Design (DDD), particularly emphasizing the importance of Ubiquitous Language. Today, I will discuss the setup and structure of my project. Project Setup I began development using Symfony my favorite PHP framework. It greatly simplifies the creation of complex web…
Pagination: Business or Technical Need?
16 December 2024
During the development of an application for an e-commerce site, I recently came across a thorny problem: how to manage product pagination while respecting the principles of Domain-Driven Design (DDD), Hexagonal Architecture, and Command Query Responsibility Segregation (CQRS)? For a long time, I wondered whether pagination should be part of…
Logbook of Learning Domain-Driven Design: Day 1
02 December 2024
Welcome to this logbook where I share my experience with Domain-Driven Design (DDD), a strategic approach to designing complex software. It places the business domain at the core of modeling, making it more coherent and comprehensible. Through a series of articles, we’ll explore the fundamental concepts, best practices, and common…