
What is abstraction
Developers use the word "abstraction" regularly, yet there is limited understanding of what it means. In a broader sense, abstraction has been overshadowed by its use in some languages to denote a method or class that will be overwritten later, as well as the phrase "use abstraction." is understood to mean "write an abstract class.".
Abstraction is one of the most important techniques for achieving decoupling and stabilizing your public interfaces at any level.