The "No Mapping" Strategy
Learn the no mapping strategy between layers in hexagonal architecture and how it impacts coupling and model design. Understand when to avoid mapping between layers, especially for simple CRUD use cases, and the trade-offs involved in maintaining clean domain models while balancing technical requirements like JSON and ORM annotations.
We'll cover the following...
Introduction
In the previous chapters, we discussed the web, application, domain, and persistence layers and what each of those layers contributes to the implementation of a use case.
We have, however, barely touched the dreaded and omnipresent topic of mapping between the models of each layer. I bet you’ve had a discussion at some point about whether you should use the same model in two layers in order to avoid implementing a mapper.
The argument might have gone something like this:
Pro-Mapping Developer:
If we don’t map between layers, we have to use the same model in both layers, which means that the layers will be tightly coupled!
Contra-Mapping Developer:
But if we do map between layers, we produce a lot of boilerplate code, which is overkill for many use cases since they’re only doing
and have the ... CRUD Create, read, update and delete