2 pages tagged.
The strategic patterns that keep a large codebase coherent: bounded contexts, context mapping, and where Kotlin helps.
Sealed hierarchies make invalid states unrepresentable: encoding aggregate invariants in Kotlin's type system.