Separation of concerns

Separate a program into non-overlapping concerns. Edsger W. Dijkstra

Motivation

Clearly separated code has some advantages.

Firstly, the programming units are small and are less dependent on each other. This eases testing.

Secondly, when concerns are cleanly separated it's easier to reason about the application. This is a valuable asset during development as well as exploitation of the application.

See also

The Xebia Essentials Cards

This page is part of the Xebia Essentials, a pack of flash cards about Software Development Done Right. You can get your own deck of Essentials cards in the Xebia store.