Abstraction or data abstraction refers to focussing on information relevant to a context/problem and suppressing other details. Abstraction involves :
- Recognising the context
- Identifying the information relevant to the context
For example, a dog’s detailed information may include its colour, breed, size, height, weight, shape of its tail, skip patterns, diseases, if any and so on
- A drawing teacher does not need details like breed, weight, diseases etc. He just needs to focus on colour, size, tail-shape, skin patterns etc. as his context is drawing and for his abstraction, the details like breed, weight, diseases etc. are unnecessary.
- A veterinary doctor will however focus on details like breed, weight, diseases etc. as these are important details for his context and other details are unnecessary for him.
Consider some examples of decomposition :
- Everyday example. When we tell a story or describe a movie to our friends, why don’t we describe every single details of the story or movie ?
- Academic example. When we write a book report, we summarize and discuss only the theme or key aspects of the book, it is abstraction.
- Engineering example. When we overview an engineering solution in a proposal or a plan, we highlight the underlying approach and hide the details.
- Computer Science example. A calculator program only shows the numbers and operators/ function buttons to user without giving details of algorithm/ program underneath.
ABSTRACTION or Data abstraction refers to focussing on information relevant to a context/ problem and suppressing other details.