I'm designing a system using Domain-Driven design principals.
I have an aggregate named Album
.
It contains a collection of Track
s.
Album
instances are created using a factory method named create(props)
.
Rule 1: An Album
must contain at least one Track
.
This rule must be checked upon creation (in Album.create(props)
).
Also, there must a method named addTrack(track: Track)
so that a new Track
can be added after the instance is created. That means addTrack(track: Track)
must check the rule too.
How can I avoid this logic code duplication?
dimanche 4 octobre 2020
DDD - Invariant enforcement using instance methods and a factory method
Inscription à :
Publier les commentaires (Atom)
Aucun commentaire:
Enregistrer un commentaire