Domain driven design (abbreviated as DDD) is a design methodology that focuses on the domain. What is an object and what is an attribute is determined by their place in the real world.

Example explanation of "What is an object and what is an attribute is determined by their place in the real world":

A cinema has a website where you can book tickets for a movie online. When booking tickets in person, you can usually specify whether you'd prefer to sit in the middle or to the sides. By following domain driven design, this feature is also implemented in the software, in the form of a preferred location (as an attribute to the booking).

If it is possible to pick seats from a list of seats that are still available, then following domain driven design will lead to implementing a Seat object (potentially linking Seats to Movies via Screenings).

history | excerpt history