Abstraction Smells
Abstract
Abstraction is a powerful principle that provides a means for simple yet effective communication and problem solving. This chapter introduces the principle of abstraction and key enabling techniques (i.e., provide a crisp conceptual boundary and a unique identity, map domain entities, ensure coherence and completeness, assign single and meaningful responsibility, and avoid duplication) that enable the effective application of the principle of abstraction in software design. It also provides a detailed description of the following design smells that result from the violation of the principle of abstraction: Missing Abstraction, Imperative Abstraction, Incomplete Abstraction, Multifaceted Abstraction, Unnecessary ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access