hasemtrip.blogg.se

Domain driven design bounded context
Domain driven design bounded context












domain driven design bounded context

domain driven design bounded context

Technical implementationĪt its core, an event is a collection of data. Requests can be denied, and we (normally) don't store the history of requests other than for analytical purposes in our systems. It is a good practice to be strict about this naming convention since it can be easy to confuse events (facts) with requests to a system (intention).

domain driven design bounded context

This implies that when we look at the event we see it as it happened in the past, and this is why we always write events in past tense. Events have already happenedĪn event always describes something that happened as a fact. Logically it is a good start to separate events and make them as explicit as possible. Sometimes it can be practical to technically choose to aggregate multiple fine-grained events into a larger event for performance reasons or simply because it logically makes more sense in the application we are developing. When you visit your friends house, and you ring the bell three times because they are slow to open the door, there are three different occurrences (events) of the door bell ringing. If the same thing happens again later, it is still a different event since it by definition happened after the first occurrence. An event can only occur onceĪn event can only happen once. Our systems can help us record and remember the important things and this is why events are a great modeling construct. Things happen all the time and there is not much we can do about it. We model the world in a way that resembles how we perceive the world around us.

#DOMAIN DRIVEN DESIGN BOUNDED CONTEXT SOFTWARE#

We cannot change history and bringing this realization into the design of our software is something that is very helpful for us when developing useful systems. When something has happened in the world around us it is a fact. First let's look at the properties of events that are ubiquitous regardless of the use case or product involved. Just like any other building block or definition it is important to recognize that all events are not equal. Many technical products base their design on events as a core building block.

  • Use Event Sourcing to provide a single source of truthĮvents are building blocks that have become popular for many use cases.
  • Supporting communication between services by publishing application events.
  • Storing events for analytics / BI purposes.
  • An event in the context of software development is something that happens around us that we choose to put in to our system as something noteworthy.














    Domain driven design bounded context