Eliminate the unavoidable complexity of object-oriented designs. Using the persistent data structures built into most modern programming languages, Data-oriented programming cleanly separates code and data, which simplifies state management and eases concurrency.
Insightful. Nicely illustrates the limits of OOP in managing the complexity of developing software. Explains how focusing on the data can simplify solving certain problems.
In Data-Oriented Programming
you will learn how to:
- Separate code from data
- Effectively manage state using immutable data
- Represent data with generic data structures
- Manipulate data with general-purpose functions
- Control concurrency in highly scalable systems
- Specify the shape of your data
- Benefit from polymorphism without objects
- Debug programs without a debugger
- Distinguish data-oriented programming from functional and OO programming