Data-Oriented Programming V09 cover
Welcome to liveBook!

This is an online version of the Manning book Data-Oriented Programming V09. With liveBook you can access Manning books in-browser — anytime, anywhere.


Thank you for purchasing the MEAP for Data-Oriented Programming.

The book is written for developers having experience in a high level programming language. It could be a classic Object Oriented language like Java or C# or a dynamically typed language like JavaScript, Ruby or Python. We assume that you have already built (alone or in a team) a couple of web systems either backend of frontend.

Data Oriented Programming (DOP) is a programming paradigm that makes the systems we build less complex. The cool thing is that DOP is language agnostic: it is applicable to any programming language.

I discovered Data Oriented programming 10 years ago when I started to code in Clojure. Since then, the quality of my design and my code has increased significantly and the systems I build in Clojure and in other programming languages are much simpler and much more flexible.

DOP is based on 4 fundamental principles that we expose briefly in Chapter 0. The principles might seem basic at first sight, but when you apply them in the context of a production ready information system, they become very powerful.

Chapter 1 exposes some common pains that Object Oriented developers experience when they develop a system. Please don’t read it as a critics of Object Oriented Programming. The main purpose of Chapter 1 is to motivate you to learn a different programming paradigm.