Skip to Content
What Is Domain-Driven Design?
book

What Is Domain-Driven Design?

by Vladik Khononov
October 2019
Intermediate to advanced
98 pages
1h 49m
English
O'Reilly Media, Inc.
Audiobook available
Content preview from What Is Domain-Driven Design?

Chapter 5. Business Logic Implementation Patterns

Business logic is the most important part of software. It’s the reason the software is being implemented in the first place. A system’s user interface can be sexy, and its database can be blazingly fast and scalable, but if the software is not useful for the business it’s nothing but a technology demo.

In the first part of this report, we saw how important it is for all stakeholders to communicate in the ubiquitous language and to have a shared understanding of the problem domain. The system’s source code should also “speak” the ubiquitous language, and be designed according to the shared model of the business domain. But how do we implement it in such a way?

As we saw in Chapter 2, not all business subdomains are created equal. Different subdomains have different levels of strategic importance and complexity. In this chapter, we will examine four different ways of implementing business logic in code: the transaction script, active record, domain model, and event-sourced domain model patterns. Each pattern suits a different level of complexity in the business domain.

Transaction Script

This pattern is well adapted to the simplest problem domains, where the business logic resembles extract-transform-load (ETL) operations—i.e., each operation extracts data from a source, applies transformation logic to convert it into another form, and loads the result into the destination store. This process is shown in Figure 5-1.

Figure 5-1. ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Learning Domain-Driven Design

Learning Domain-Driven Design

Vlad Khononov

Publisher Resources

ISBN: 9781492057802