Skip to content

Domain Modeling

with a fully working example

Modeling a Grocery List app

What is domain and what is not?

Here is a simple decision tree: Is it a concept that can live outside your company?

  • Yes -> not domain
  • No -> domain

OOP, that traitor

To me, Object-Oriented Programming is a paradigm imported by the video game industry because it suited them there. But it does not suit regular business in my opinion.

I can endure the immutability performance overhead in exchange for predictability and peace of mind. The trade-off is easily made.

Yet, because OOP is such a major standard and TypeScript adoption is young (in comparison), there is not much documentation regarding how to model a system in TypeScript using function/data-oriented programming.

That is the subject of this guide. How about we get started?