Domain Driven Design with Laravel 9

  • avatar
Preview post image

Modern web frameworks teach you to take one group of related concepts and split it across multiple places throughout your codebase. Laravel is a robust framework with a big community behind it. Usually it's standard structure is enough for most starting projects.

Building scalable applications, instead, requires a different approach. Have you ever heard from a client to work on controllers or review the models folder? Probably never - they ask you to work on invoicing, clients management or users. These concept groups are called domains.

Domain Driven Design: Layers

  • avatar
  • 4 mins read
Preview post image

Creating applications that can handle very complex tasks requires separation of code by using directory structures, layers and boundaries. This is where the concept of a Layered Architecture comes in. Projects developed with the Domain Driven Design approach has the following layers: domain, application, infrastructure and user interface (UI).

Domain Driven Design: Introduction

  • avatar
  • 3 mins read
Preview post image

Domain Driven Design (from now on DDD) is an approach to software design that focuses mainly on a business problem and how to organize the logic that solves it, leaving aside details like programming languages, infrastructure technologies, etc… DDD is about mapping real-world system or processes into software artifacts.

 Join Our Newsletter

Get the latest news and popular articles to your inbox every month

Domain Driven Design: Components

  • avatar
  • 5 mins read
Preview post image

We already discussed about the basic concepts and terms in Domain Driven Design (DDD), check out the Introduction post if you missed it. Also we explained which Layers compose the DDD architecture. Now let's see the artifacts we use to unify these concepts and build our application (with PHP example).