ENOTES

Object Oriented vs Procedural programming language

access_time Sep 07, 2021 remove_red_eye 6443

Procedural or structural Programming language: This is a primitive programming paradigm i.e. model in which program executes following top to bottom approach executing every statement sequentially. The program main idea revolves around the functions which is controlled and called from the main functions. Several control structure such as branching and looping are used to control the flow of program execution hence called structural programming language.

Features of Procedural Programming

  1. Follows top down approach.
  2. Follows modular design. (Use of functions)
  3. Follows structured theorem. (Sequence, Branching, Looping)

Limitation: Since, executing whole program from top to bottom every time to perform certain task is time consuming and inconvenient. So, to overcome this limitation Object Oriented Programming is used in mainstream software development.

Object Oriented language (OOP): This is the newer programming model which focus on “object” rather than procedure. These objects can be the real world entities which is capable of communicating with other objects by sending, receiving and processing data. Objects consists of data and function which is also called member function. Since data can be accessed only by its member function, we can process data by calling its member function. This concept of binding data and functions together is “Object” and the programming model in which we create several object capable of communicating with other objects is called Object Oriented Language.

Since, Data and functions are bind as single unit in an object OOP ensure security through several features like data encapsulation, data hiding etc. Moreover several advance features like Inheritance, Polymorphism helps in faster development of the program.

Features of Object Oriented Programming

  1. Follows bottom up approach.
  2. Program uses several objects.
  3. Data can be hidden which ensures security.
  4. Convenient for complex software development.

Differentiation between Object Oriented and Procedural Language

Procedural or Structural ProgrammingObject Oriented programming 
It is a primitive concept used for software development.It is a modern and newer concept used for software development.
It is the collection of several statements executed sequentially.It is the collection of objects capable of communicating with each other.
It follows top to bottom approach.It follows bottom to top approach.
It focuses on procedure.It focuses on data.
Functions are the main concept of ProceduralClass and objects are the main concept of OOP. 
Adding new data and function is difficult and time consuming.Adding new data and function is easier.
Does not support data hiding, encapsulation, inheritance.Support all these advance feature.
Less secured since it does not support data hiding features.Higher security can be maintained since several access level such as private, public, protected can be used.
Program development is slower and difficult.Program development is faster and easier.
Code re-usability is tedious and has no proper mechanism.Easy to reuse programs codes.
C, FORTRAN, COBOL, QBASIC etc are some examples.C++, C#, Java, PHP, JavaScript etc are some examples.

Click here to learn C Language.
Click here for Library VS User defined functions.