A Glance at Procedure-Oriented Programming
Definition: Programming with high level languages like COBOL, FORTRAN and C are commonly known as procedure-oriented programming.
In this the problem is viewed as a sequence of things to be done. A number of functions are written to accomplish the tasks. The primary focus is on functions. A program structure of a procedural programming is as follows.
It basically consists of writing a list of instructions and grouping them as functions. And many data items are placed as global so that they can be accessed by all functions. Each function can also have its own local data.
Using global data are risk to any accidental change in any function. In large program it is difficult to identify which data is used by which function. In such case we need to revise all the functions that access that particular data. This may lead to bugs creeping in. Another drawback is that it does not model real world problems very well. Because the functions are action-oriented and do not respond to elements of the problem.
Characteristics of Procedure Oriented Programming:
- Emphasis on Algorithms.
- Larger programs are divided into smaller programs called functions.
- Functions share global data.
- Data can move freely around the system from function to function.
- Functions transform data from one form to another.
- It follows Top-down approach in program design.
Object-Oriented Programming
The main motive of invention of object oriented approach is to remove the flaws in procedural approach. It treats data as a critical element and does not allow it to move freely around the system. It ties data more closely with the functions and protects it from accidental modification. In OOP the problem is divided into number of entities called objects. It binds data and functions as objects. The data of an object can be accessed only by the functions associated with that object. But the functions of one object can access the functions of other objects. The organization of data and function in OOP is as follows.

Features of Object Oriented Programming:
- Emphasis on data rather than procedure.
- Programs are divided into objects.
- Functions that operate on data of an object are tied together in that object.
- Data is hidden and cannot be accessed by external functions.
- Objects may communicate with each other through external functions.
- New data and functions can be added easily whenever necessary.
- It follows Bottom-up approach in program design.