The first insight of DOP is that we can decrease the complexity of our systems by separating code from data. Indeed, when code is separated from data, our systems are made of two main pieces that can be thought about separately: data entities and code modules. This chapter is a deep dive in the first principle of DOP (summarized in figure 2.1).
Principle #1
In this chapter, we’ll illustrate the separation between code and data in the context of Klafim’s Library Management System that we introduced in chapter 1. We’ll also unveil the benefits that this separation brings to the system: