We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
Reduce System Complexity with Data-Oriented Programming • Yehonathan Sharvit • GOTO 2023
Reduce system complexity with data-oriented programming by treating data as data, not code, and avoiding mutation for safer and simpler systems.
- We separate code and data to reduce system complexity.
- Data-oriented programming promotes treating data as data, not as code.
- Immutable data allows for safe sharing and reduces the complexity of data manipulation.
- The schema of data is used to describe the shape of data.
- data can be represented as a JSON schema or a map/dictionary.
- Inheritance is not necessary when using data-oriented programming.
- Mutating data is a source of complexity and should be avoided.
- Immutable data is safer to share and easier to debug.
- Data-oriented programming aims to reduce complexity for information systems.
-
Principles of data-oriented programming:
- Principle 1: Separate code and data.
- Principle 2: Represent data as data, not as code.
- Principle 3: Immutable data ensures safety and simplicity.
- Principle 4: Use structural sharing to avoid complexity.
- Data-oriented programming can be used in any programming language, and is especially useful for reducing system complexity.
- By treating data as data, we can reduce the complexity of our systems and make them easier to understand and maintain.