Coupling and Cohesion
ℹ️ disclaimer This article represented my mental model at the time of writing, but I’m always iterating on it. Coupling and cohesion Cohesion Cohesion is a concept that refers to the degree to which the elements (such as functions, classes, or modules) within a software component or module are related to each other and perform a specific, well-defined, and focused set of tasks (it is a crucial principle for designing maintainable, modular, and understandable software systems)....