- It is a mechanism of retrieving the required/essential information by hiding background details. We can say that it is the process of selecting important data sets for an Object in your software , and leaving out the insignificant ones.
- Another definition The concept of representing important details and hiding away the implementation details is called data abstraction. This programming technique separates the interface and implementation.
- Abstraction tries to minimize details so that the programmer can focus on a few concepts at a time. Abstraction is the basis for software development.
- Abstraction refers to the act of focusing on important details or characteristics and filtering out the unwanted details or explanations.
- Abstractionis a process where you show only “relevant” data and “hide” unnecessary details of an object from the user.
e.g. : Consider your mobile phone, you just need to know what buttons are to be pressed to send a message or make a call, What happens when you press a button, how your messages are sent, how your calls are connected is all abstracted away from the user.
- There are 3 levels of abstraction:
- Physical Level Abstraction: It always deals with physical architecture of the application.
- Logical / Conceptual Level Abstraction: it always deals with the type of data/coding/testing policies, which we follow to develop the application effectively.
- View Level Abstraction: It always deals with the retrieval of the required data without dealing with the entered data and the application’s physical structure.
e.g.: In the development of a software, its planning part comes in physical level abstraction coding come in Physical level abstraction coding comes in logical level abstraction and when we load it on any server, then it can be viewed by everyone, so it comes in view level Abstraction.