Any of various programming concepts related to the level of abstraction applied to a particular problem, algorithm or scenario. Examples may include substituting higher-level programming constructs where previously lower-level constructs were previously applied.
Indirection
Any of various programming concepts related to the level of abstraction applied to a particular problem, circumstance, algorithm or knowledge domain.