leaky abstraction
nounEtymology Popularised in 2002 by software engineer Joel Spolsky.
1
Computing, Engineering, Mathematics, Natural sciences, Physical sciences, Sciences, Software An abstraction that undesirably exposes details and limitations of its underlying implementation.
- 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.2015, Suhas Chatekar, Learning NHibernate 4, Packt Publishing Ltd, →ISBN, page 291: