Building PHP applications using Domain-driven design techniques results in code that is easier to modify, maintain, and test, and a better user experience. In this tutorial, we will start by establishing a ubiquitous language. Then, we will learn the benefits of encapsulating business logic in PHP value objects using test-driven development.
Next, we will learn how to setup bounded contexts, entities, and aggregate roots to manage state and protect invariants in both Symfony/Doctrine and Laravel/Eloquent environments. We will also cover more advanced topics in the DDD world, such as event sourcing and command query responsibility segregation.
PHP. Providing Docker images and example repository. Minimal front-end work so no specific PHP framework knowledge is required. Workshop will cover topics in both Symfony/Doctrine and Laravel/Eloquent.