Model: competing heuristics
July 3rd, 2022
Habit: look for your heuristics and competing heuristics
Heuristics competing against Favour Composition over Inheritance
Heuristic: Use inheritance when template pattern fits
Heuristic: Use inheritance when is-a
Heuristic: Use inheritance when behaves-like-a
Heuristic: Use inheritance when and only when there is inheritance in the domain
Heuristics competing about reality
Heuristic: Don't model reality, evaluate for usefulness...driven by the domain
Heuristic: immutable in reality => immutable in code
invoice - ready, signed off, sent out, does not change anymore
Heuristic: when your solution involves breaking&entering, find another solution
Heuristics to help find competing heuristics
Heuristic: Assume there are multiple possible models
core DDD heuristics
(src: Video: Design Heuristics - Mathias Verraes - KanDDDinsky 2018)
This post was referenced in: