What is the difference between procedure -oriented language
and object oriented language?

Answer Posted / elango

There are 2 major software development approaches. They are listed below.
• Procedure oriented approach (structure oriented approach).
• Object oriented approach
Procedure oriented approach:
• Procedure oriented approach always concentrates on functions in the particular application, instead of considering the entities involved in the application.
• The software is fully based on the functions.
• C programming is a procedure oriented programming language (POP).
• Procedure oriented approach is not suitable to create real world applications.
Example for POP:
Let us assume, we going to create software for banking domain. The application is related with money transfer. Now let us see how we will develop the software using POP.
Scenario: First customers have to get the form and should fill it and submit it to banker. Banker will receive and process the application form. Once banker done with the money transfer, banker will inform to manager stating the status of the money transfer. And manager will issue acknowledgement to the customer and customer will receive it. Current system is a manual process and we are creating application to overcome the problem in the current system.



Step 01: Identify the functions in the application.
• Start the application
• Get the application form
• Fill the form
• Submit the form
• Receive and process
• Inform to manager
• Issue acknowledgement
• Receive the acknowledgement
• Close the application
Step 02: Identify the variables in the application.
Assume money transfer is one of the modules in the application, so the application even consists of common information about the customers.
Common information’s about the customer: A/cno, name, age, account_type, e-mailid , contactno, fathername, annual_income, signature , dob.
Note: Even password credentials can also be stored in the application.
Variables needed to complete the application process:
Toa/c_holderNo, to_branch, to_bank, to_amount, application_date, etc.
Step 03:
In the application, all the functions are used in the main function. Few variables will be declared as a global variable that will be shared by the functions. And few variables are local to the function. If we write coding for all the functions and place it in a proper way, then the application works properly.
Limitations in the above developed application using POP:
• We are not giving importance to the objects involved in the application. Objects involved are Customer, Banker and Manager.
• Variables which are declared global can be accessed by any functions in the application. Even banker and manager involved functions can also access personal information’s of the customer which is declared global to the application. So security is lacking.
• In POP each function is depend on each other, but this not the structure in the real world environment.
• Any changes to the application is not that much easy.
Note:
Customer functions – get the form, fill the form, submit the form, and receive the acknowledgement.
Banker functions – receive and process, inform to manager.
Manager function – issue acknowledgement.
Note:
To overcome the limitations in the POP language, we just moved to the next level called object oriented programming language.
Procedure oriented language are used to develop small applications.



Object oriented approach:
• Object oriented approach always concentrates on objects or entities involved in the application.
• The software is fully based on classes and objects.
• C++ and JAVA is object oriented programming language (OOP).
• Object oriented approach is used to create real world applications.
• Object oriented approach provides data security, overloading, inheritance, etc.
Developing the same application using OOP language:
Step 01: Identify the Entities involved in the application.
• Entities involved are Customer, Banker, and Manager.
• The basic concept involved in the OOP language is CLASSES.
• Classes in the particular application are entities involved in the application.
• So we need to declare 3 classes in the application - Customer, Banker, and Manager.
Step 02: Place the functions and variables in the classes.
• Customer class functions – get the form, fill the form, submit the form, and receive the acknowledgement.
• Banker class functions – receive and process, inform to manager.
• Manager class function – issue acknowledgement.
• Customer class variables - A/cno, name, age, account_type, e-mailid , contactno, fathername, annual_income, signature , dob, password credentials , Toa/c_holderNo, to_branch, to_bank, to_amount, application_date, etc.
• Banker class Variables - only a/cno, name, signature, Toa/c_holderNo, to_branch, to_bank, to_amount, application_date are exposed to banker class to process the application.
• Manager class variables – Manager Class consist of variable Manager ID which is exposed only to banker class, not to customer class. Only a/cno, name and status of the application are exposed to the manager class to acknowledge the customer.
Step 03: Final step. The objects of Customer, Banker and Manager Classes are interacted with each other. This is the way the complete application is designed in the object oriented programming language.
Advantages of OOP when compare to POP:
• It is more suitable for real time application development. It very close to the real world implementation.
• Here we are giving importance to the objects involved in the application. Rather than giving importance to the functionality. Objects involved are Customer, Banker and Manager.
• Variables are declared in the related classes, and only the necessary information’s are exposed to the other classes. So data security can be ensured.
• In OOP each functions is not depend on each other. The objects interact with each other using functions.


Link for reference:
http://freefeast.info/general-it-articles/difference-between-procedure-oriented-programming-and-object-oriented-programming-procedure-oriented-programming-vs-object-oriented-programming/

Is This Answer Correct ?    1 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

shall we execute our java programmes in jre

1942


write algo for cobol program whichuse three flat file to extract some specific information 8 marks mainframe

1756


How do i find out the number of parameters passed into function?

2408


Explain the difference between an expert and a novice user. How would your strategy for designing user interfaces for an expert user differ from that for designing user interfaces for a novice user.

2818


Given an array all of whose elements are positive numbers, find the maximum sum of a subsequence with the constraint that no 2 numbers in the sequence should be adjacent in the array. So 3 2 7 10 should return 13 (sum of 3 and 10) or 3 2 5 10 7 should return 15 (sum of 3, 5 and 7)

946


what is difference between kpo and it industry? that is in terms of work, package etc

1736


how do i add a column dynamically in a table by using java application?

1740


When you deliver your C++ headers and C++ library of a class (what all can you change in the class so that application using your class does not need to recompile the code)

927


What is WEB 3.0? What are the features their in WEB3.0

1817


why we need to take u?

1870


why we use abstract word in abstract window toolkit in java language.

1960


What is the use of Differ interface check box in Ship confirm?

2082


what are the 3 forms of a prolog term

2975


What is easiest way to get the PL/i compiler,I didn't have found the compiler in my library. Is there any extra cost if we want to access the PL/1 programs?Actually we r having Mainframe rented training Ids

1856


it is a language or tools?

1811