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
shall we execute our java programmes in jre
write algo for cobol program whichuse three flat file to extract some specific information 8 marks mainframe
How do i find out the number of parameters passed into function?
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.
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)
what is difference between kpo and it industry? that is in terms of work, package etc
how do i add a column dynamically in a table by using java application?
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)
What is WEB 3.0? What are the features their in WEB3.0
why we need to take u?
why we use abstract word in abstract window toolkit in java language.
What is the use of Differ interface check box in Ship confirm?
what are the 3 forms of a prolog term
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
it is a language or tools?