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
we create a pf with 3 fields.2 is defined as keyfields.we lock it with alcobj command.how we find out whether the file is locked or not?is it dspfd??/
what is the difference between rename and label
Where do we need Operator overloading?
I want sample papers for NIC Examination. Plz send them to my mail Id das.neelam@gmail.com . Plz send it today, tomorrow i've the exam.
what is c sharp dotnet
Find out the list of roles which gives access to GUI activities? thanks in advance
THERE ARE 4 SOURCE FILES WHICH CONTAINS SAME METADATA CREATE A TARGET THAT SHOULD DISPLAY THE FILE NAME ALONG WITH THE RECORD PLEASE SEND THE ANSWERFOR THIS QUESTION WITH MAPPING
what is difference between object oriented programming structure and object oriented programming system?
< DL Compact > tag is used for
could you please tell me how to draw the calibration curve for HPLC {the software which we are using}?
Write a pascal program to calculate the sum of the first 100 even number and odd number
how do u handle table control inbdc explain the process in steps iwant the answer in urgent please forward this even i know how to explain there
can any method return type may be constructor , or that method name allow
what is the similarity between networking devices?
What is the difference between WebIntelligence and Designer in creating universes?