Modeling our system’s behavior
Using synchronous logic, then the infrastructure sandwich.
Here is a simple decision tree: Is it a concept that can live outside your company?
To me, Object-Oriented Programming is a stale paradigm imported by the video game industry because it suited them there. This industry now uses the entity component system. In my opinion, it does not suit regular business projects.
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 to other languages), there is not much documentation regarding how to model a system in TypeScript using functional/data-oriented programming.
That is the subject of this guide. How about we get started?