leaky abstraction
Jump to navigation
Jump to search
English[edit]
Etymology[edit]
Popularised in 2002 by software engineer Joel Spolsky.
Noun[edit]
leaky abstraction (plural leaky abstractions)
- (software engineering) An abstraction that undesirably exposes details and limitations of its underlying implementation.
- 2015, Suhas Chatekar, Learning NHibernate 4, Packt Publishing Ltd, →ISBN, page 291:
- This is a classic case of leaky abstraction. Repository is supposed to abstract away any concerns around querying the database, but now what we are doing here is returning an
IQueryable<T>
to the consuming code and asking it to build the queries, thus leaking the abstraction that is supposed to be hidden into repository.