Basic Concepts of Object-Oriented Programming
The object-oriented programming is a different approach to programming. It has
been created with a view to increase programmer's productivity by overcoming the
weaknesses found in procedural programming approach. Over the years many
object-oriented programming languages such as C++,C#,VB.NET, JAVA and smalltalk have come up
and are becoming quite popular in the market. The major need for developing such
languages was to manage the ever-increasing size and complexity of programs.
Basic ConceptsThe following are the basic concepts used in object-oriented programming.
ObjectsIt can represent a person, a bank account or any item that a program can handle. When a program is executed, the objects interact by sending messages to one another. For example, if ‘customer’ and ‘account’ are two objects in a program, then the customer object may send message to account object requesting for a bank balance. Each object contains data and code to manipulate data. Objects can interact without having to know details of each other’s data or code. It is sufficient to know the type of massage accepted and the type of response returned by the objects.ClassesWe have just mentioned that objects contain data and function or code to manipulate that data. The entire set of data and code of an object can be made a user-defined data type with the help of a class. In fact objects are variables of type class. Once a class has been defined, we can create any number of objects associated with that class. For example, mango, apple and orange are members of class fruit. If fruit has been defined as a class, then the statement fruit mango, will create an object mango belonging to the class fruit.Data AbstractionAbstraction refers to the act of representing essential features without including the background details. To understand this concept more clearly, take an example of 'switch board'. You only press particular switches as per your requirement. You need not know the internal working of these switches. What is happening inside is hidden from you. This is abstraction, where you only know the essential things to operate on switch board without knowing the background details of switch board.Data EncapsulationEncapsulation is the most basic concept of OOP. It is the way of combining both data and the functions that operate on that data under a single unit. The only way to access the data is provided by the functions (that are combined along with the data). These functions are considered as member functions in C++. It is not possible to access the data directly. If you want to reach the data item in an object, you call a member function in the object. It will read the data item and return the value to you. The data is hidden, so it is considered as safe and far away from accidental alternation. Data and its functions are said to be encapsulated into a single entity.ModularityThe act of partitioning a program into individual components is called modularity. It gives the following benefits. l It reduces its complexity to some extent. l It creates a number of well-defined, documented boundaries within the program. Module is a separate unit in itself. It can be compiled independently though it has links with other modules. Modules work quite closely in order to achieve the program’s goal.InheritanceIt is the capability to define a new class in terms of an existing class. An existing class is known as a base class and the new class is known as derived class. Number of examples can be given on this aspect. For example, a motor cycle is a class in itself. It is also a member of two wheelers class. Two wheelers class in turn is a member of automotive class as shown in Fig. 1. The automotive is an example of base class and two wheelers is its derived class. In simple words, we can say a motor cycle is a two wheeler automotive. C++ supports such hierarchical classification of classes. The main benefit from inheritance is that we can build a generic base class, i.e., obtain a new class by adding some new features to an existing class and so on. Every new class defined in that way consists of features of both the classes. Inheritance allows existing classes to be adapted to new application without the need for modification.
Fig. 1
PolymorphismPolymorphism is a key to the power of OOP. It is the concept that supports the capability of data to be processed in more than one form. For example, an operation may exhibit different behaviour in different instances. The behaviour depends upon the types of data used in the operation. Let us consider the operation of addition. For two numbers, the operation will generate a sum. If the operands are strings then the operation would produce a third string by concatenation.Benefits of OOPOOP provides lot of benefits to both the program designer and the user. Objectoriented approach helps in solving many problems related to software development and quality of software product. The new technology assures greater programmer productivity, better quality of software and lesser maintenance cost. The major benefits are :
Programming Applications of OOPOOP has become one of the programming buzzwords today. There appears to be a great deal of excitement and interest among software programmers in using OOP. Applications of OOP are gaining importance in many areas. OOP has been extensively used in the development of windows and word based systems such as MS-Windows, x-Windows etc. The promising application areas of OOP are:
|
Thanks for publishing this blog, really awesome. Its help me to clarify my doubts well.
ReplyDeleteC C++ Training in Chennai
JMeter Training in Chennai
JMeter Training
learn JMeter
JMeter Training Course
Appium Training in Chennai
javascript training in chennai
core java training in chennai
I am impressed by the way of writing your blog and topics which you covered. I read all your post which is useful and informative. keep it up
ReplyDeleteAi & Artificial Intelligence Course in Chennai
PHP Training in Chennai
Ethical Hacking Course in Chennai Blue Prism Training in Chennai
UiPath Training in Chennai