Why OOP?

Just as the name suggests this programming method uses objects. OOP aims to implement properties like inheritance, hiding, polymorphism, encapsulation, etc in programming. The main aim of OOP is to clamp together all the data and the functions that bind them so that no other part of the code can access a particular data except that prescribed function. It basically helps us to write more efficient code using way lesser lines than generally needed. 

OOP is an archetype to design a program using classes and objects, it basically simplifies software development and maintenance. It is a method of solving enigmatic problems by breaking them into smaller problems using objects. Before OOP, programs were written like a procedure, in a step by step sequence, they were like a long list of instructions. But the OOP is about creating objects and classes that will interact with each other and perhaps form some kind of hierarchy among themselves for more efficient code.


Advantage of OOP over Procedure-oriented programming language:

  • In OOP we can easily develop and change the code easily and efficiently by just editing the classes and the functions used. Whereas in Procedural oriented programming it is quite cumbersome to make changes, rather many generally opt to replace the entire code itself.
  • In OOP we can hide the data whereas in procedural oriented programming if the data is declared globally as a global variable it can be accessed from anywhere.
  • In OOP we can simulate real-world events easily. Solutions to real-world problems can be easily provided using a data flow model in OOP.
  • OOP concept of Inheritance is useful for accessing base class properties into the derived class. So, this increases code reusability and reduces code length.
  • OOP concept of Encapsulation is a data hiding property within a class so that a particular data member can remain private.
  • OOP concept of Polymorphism which uses virtual methods which is useful in overriding class properties and methods.

Why have we chosen C++ as a platform to implement our project?


Basically, throughout our Engineering course, we have been familiar with C++. Keeping its technical aspects aside we as students have developed a form of an attachment to this language and so there is somewhat of personal bias towards this programming language. Moving on to our benefit C++ is generally preferred over other languages because it supports all the basic general features of OOP in an easy way. In C++ programs are expandable so more features can easily be added and the existing features can be easily modified. This saves time in the software development part. Moreover, all the points mentioned in the above subheading in advantages of OOP are all followed by C++ that are Classes, Inheritance, Encapsulation, etc. so let's not mention them again. So that is particularly why we mutually agreed on C++ to be our platform for this project.


- Sagar Potnis
  (K 63)

Comments

Post a Comment

Popular posts from this blog

Do you have a ticket?

It's moderator's Office

Dynamic Memory Allocation in C++