jargon

Design patterns·Objects, messages and the principles

the interface is three methods and the implementation is two thousand lines, and that ratio is the point.

Deep module

Also calleddeep versus shallow module, narrow interface deep implementation

Ousterhout's framing that a good module has a small interface relative to the functionality behind it, and a bad one — a shallow module — has an interface nearly as complicated as what it hides. It is the sharpest available argument against reflexively splitting classes: many small classes each with a wide interface is more total complexity, not less. It also explains why a pass-through method or a one-line wrapper class feels wrong even when it satisfies every principle on a checklist.

Commonly confused with