The programming in which data is
logically represented in the form of a class and physically represented in the
form an object is called as object oriented programming (OOP).
There
are some basic programming concepts in OOP:
- Abstraction
- Encapsulation
- Inheritance
- Polymorphism
Abstraction
Abstraction
is a process of hiding the implementation detail and only displaying the
essential features. Abstraction is achieved by means of access specifies.
.Net has five access specifies
- Public: Accessible outside the class through object reference.
- Private: Accessible inside the class only through member functions.
- Protected: Just like private but Accessible in derived classes also through member functions.
- Internal: Visible inside the assembly. Accessible through objects.
- Protected Internal: Visible inside the assembly through objects and in derived classes outside the assembly through member functions.
In object-oriented software, complexity is managed by using abstraction.Abstraction is a process that involves identifying the critical behavior of an object and eliminating irrelevant and complex details.
Advantages of abstraction are the hiding of implementation details, component reuse, extensibility, and testability. When we hide implementation details, we reveal a cleaner, more comprehensible and usable interface to our users. We are separating our interface from our implementation, and this makes component reuse more practical. Many, if not all of the object-oriented concepts we have discussed throughout this document play a role in the abstraction principle. Working together, their end goal is the same, to produce software that is flexible, testable, maintainable, and extensible.