Definition: Abstraction, in programming, is the process of hiding complex underlying details and providing a simplified interface for the programmer to interact with. It allows developers to work at a ...