Introduction to domain-driven design in PHP

Building PHP applications using domain-driven design (DDD) techniques results in code that is easier to modify, maintain, test, and makes for a better user experience. In this hands-on tutorial, you will become versed in the best practices for solving problems in PHP from start to finish.
You will learn to:
– Discover a ubiquitous language and identify changes in the design of PHP classes, methods, and problem solving
– Assemble an incorruptible domain model in PHP by encapsulating business logic in immutable value objects, specifications, and entities
– Employ best practices for persisting and accessing entities and aggregate roots in Doctrine and Zend DB and Hydrator
– Use advanced PHP object-oriented techniques to simplify code and reduce state complexity
– Plan for change by using the Hexagonal Architecture Pattern
– Evaluate when and how to use CQRS techniques
– Write your own DIY event sourcing and use libraries like EventSauce and Prooph
– Introduce DDD to a “legacy” codebase
– Discover recommended resources for learning more about applying DDD in PHP