-
Leaky abstraction
A leaky abstraction in software development refers to a design flaw where an abstraction, intended to simplify and hide the underlying complexity of a system, fails to completely do so. This results in some of the implementation details becoming exposed or ‘leaking’ through the abstraction, forcing users to have knowledge of these underlying complexities to…