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
When we delete logfiles such as screenshots how does it affect the ldf file? Ive seen huge change while adding screenshots in the ldf file but a very minor one deleting them.Please Explain
what is integration testing in real time applications?
what is the certificates in biztalk?
Which language they use during interview?
what is log files in qtp what is use
difference between mantis and other tools?
Write a program to find factorial of a number using functions
how to generate dsnless connectivity in j2ee
what is the BAM? where we can use it in BizTalk server?
hi..this is kartheek..complted mca in 2009..but i dont have knowledge in programing..but to learn new language.. which one is suitable for me?is SAP or IBM mainframes is suitable for me..?if it suits how much will it costs..?pls answer...
You are given some denominations of coins in an array (int denom[])and infinite supply of all of them. Given an amount (int amount), find the minimum number of coins required to get the exact amount. What is the method called?
how to display xisheet in list box in c# .net
what is the similarity between networking devices?
Given an array of size n. It contains numbers in the range 1 to n. Each number is present at least once except for 2 numbers. Find the missing numbers.
hi this is uday i want prepare for nic exam if any one have previous question papers please send me or atlest guide me how to prepare my ID is udaykiran4u@in.com