Peruse SICP 3 : Modularity, Objects, and State
Modularity, Objects, and State
Why name it as Modularity, objects and State?
Because the logic of their relationship, is that, the Modularity is purpose, the Objects is methodology, and the State is the key point of implement that is different from the previous way which is Procedures.
The preceding chapters introduced the basic elements from which programs are made. We saw how primitive procedures and primitive data are combined to construct compound entities, and we learned that abstraction is vital in helping us to cope with the complexity of large systems.
This is what we have already had, of which, abstraction for complexity of large systems.
But these tools are not sufficient for designing programs.
Problem comes, which is, not good for designing.
Why?
Effective program synthesis also requires organizational principles that can guide us in formulating the overall design...