Define practices that enable the generation of scalable and maintainable code over time.
This chapter draws on design principles for modularity learned from decades of software design considering them from the point of viw of code-driven infrastructure. It then looks at different types of components in an infrastructure system, with an eye to how we can leverage them for better modularity.
This chapter focuses on modularizing infrastructure stacks; that is, breaking stacks into smaller pieces of code.
This chapter explores different approaches from a viewpoint of how the infrastructure its been defined affects on coupling.