Introduction to Data-Oriented Design [pdf]
- Programming
- Developer Tools
- Infrastructure
The posted PDF is an introduction to data-oriented design, the game-programming idea associated with Mike Acton that says software structure should follow the data being transformed and the machine that will process it, not an object model that mirrors the business domain. In practice that usually means laying out memory so the common work happens over compact, predictable chunks of data, cutting indirection, and preferring batch operations over per-object logic. Readers kept translating the concept out of its usual game-engine framing into plainer terms. The strongest common read was that DOD is not a specific framework, and not identical to ECS, but a habit of starting with data in and data out. People described it as schema-first thinking for programs. Design the representation around the operations that dominate runtime, then write code that matches that shape.
If you are building performance-sensitive systems, design around the hot data paths first and treat abstractions as optional layers that must earn their cost. If you are not bandwidth or cache bound, borrow the simpler habits like batching, composition, and cleaner data layout without forcing a full DOD rewrite.
-
gamedevs.org
- Discuss on HN