0% found this document useful (0 votes)
72 views4 pages

Effects of Oop Assignment

Object-oriented programming (OOP) has introduced several key changes to software development including: 1) Modeling programs around objects that encapsulate both data and methods, rather than just functions and logic. 2) Key concepts of OOP include objects, classes, encapsulation, inheritance, and polymorphism. 3) OOP makes code reuse easier since objects can be reused in other programs, improves software design, and makes programs easier to maintain and modify over time compared to previous programming techniques.

Uploaded by

sibhat mequanint
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
72 views4 pages

Effects of Oop Assignment

Object-oriented programming (OOP) has introduced several key changes to software development including: 1) Modeling programs around objects that encapsulate both data and methods, rather than just functions and logic. 2) Key concepts of OOP include objects, classes, encapsulation, inheritance, and polymorphism. 3) OOP makes code reuse easier since objects can be reused in other programs, improves software design, and makes programs easier to maintain and modify over time compared to previous programming techniques.

Uploaded by

sibhat mequanint
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Effects of Object-Oriented Programming on

Modern Software Development


Research problem: What changes has it actually introduced into the programming
world when placed in a balance with other programming techniques?

Design: This paper answers this question by taking a detailed and analytical look into the
history and evolution of programming Languages

What changes has it actually introduced into the programming world when placed in a
balance with other programming techniques? This paper answers this question by taking a
detailed and analytical look into the history and evolution of programming Languages. The
paper unraveled the comparative advantages of OOP over a few earlier programming
techniques.

Computer programming has undergone both tumultuous and turbulent moments which
subjected programmers to rough learning and application terrain. It used to be so bad that
one programmer may not and (most times) cannot comprehend what another programmer
presented with their codes. To make the situation worse, the programmer who authored a
set of codes would end up forgetting completely what the codes were to do few years later.
The consequence of was a software or application which is very difficult (if not impossible)
to maintain.

Assembly Language: Assembly language is a programming Language that can be used to


directly tell the computer what to do [1]. An assembly language is almost exactly like the
machine language that a computer can understand, except that it uses words called
mnemonics in place of numbers. An assembler can easily change the program into machine
code, replacing the mnemonic with the binary patterns they stand for because computer
cannot really understand an assembly program directly.

Procedure-Based programming: Procedural programming is a programming paradigm, derived


from structured programming, based on the concept of the procedure call.  Is a programming
paradigm, derived from structural programming, based on the concept of the procedure call
Procedures, also known as routines, subroutines or function, simply contain a series of
computational steps to be carried out [2].

Modular programming: Modular programming is a software design technique that emphasizes


the separation of the functionality of a program into independent, interchangeable segments
called modules. Theoretically, modules represent a separation of concerns, and improve
maintainability by enforcing logical boundaries between components.
Structured Programming: Structured Programming is a technique for organizing computer
program codes in a hierarchy of modules/segments showing how they are used. Structured
programming which includes modular programming is a subset of procedure based
programming enforces a logical structure on the program being written to make it more
efficient and easier to understand and modify (Rouse, 2014).

Object-Oriented programming: object-oriented programming (OOP) is a programming


language model in which programs are organized around data, or object, rather than functions
and logic. An object can be defined as data field that has unique attributes and behavior [3].

Features of Object-Oriented Programming: object-oriented programming (OOP) includes the


concept of Objects, Class, Data Abstraction and Encapsulation, Inheritance and Polymorphism

Objects: Objects are the basic run-time entities in an object-oriented system.


Programming problem is analyzed in terms of objects and nature of communication
between them. Objects interact with each other by sending messages.

Classes: A class is a collection of objects of similar type. Once a class is defined, any
number of objects can be created which belong to that class.

Data Abstraction and Encapsulation: Abstraction refers to the act of representing


essential features without including the background details or explanations. The ability
of objects to hide certain parts of themselves from programmers is called Encapsulation
in older programs; coders needed understand the details of a piece of code before using
it. Encapsulation is used. This prevents programmers from tampering with values they
shouldn't.

Inheritance: Inheritance is the process by which objects can acquire the properties of
objects of other class.

Polymorphism: Polymorphism means the ability to take more than one form.
Polymorphism is extensively used in implementing Inheritance.

Inherent Pros of Object-oriented Programming

Code Reuse and Recycling: Objects created for Object Oriented Programs can easily be reused
in other programs.
Design Benefits: Large programs are very difficult to write. Object Oriented Programs force
designers to go through an extensive planning phase, which makes for better designs with
fewer flaws.
Software Maintenance: Programs are not disposable. Legacy code must be dealt with on a daily
basis, either to be improved upon (for a new version of an exist piece of software) or made to
work with newer computers and software. An Object Oriented Program is much easier to
modify and maintain than a non Object Oriented Program.

Procedure-Based Versus Object-Based Programming

The key difference between Object Oriented Programming and Procedural Programming is that
the focus of Procedural Programming is to break down the programming task into a collection
of variables and subroutines while, the focus of Object Oriented Programming is to break down
the programming task into objects, which encapsulate data and methods. Most notable
difference could be that while Procedural Programming uses procedures to directly operate on
data structures, Object Oriented Programming will bundle the data and methods together so
that an object will operate on its own data (KevanStannard, 2011).

METHODOLOGY: Studies have been made about the effect of OOP on modern software
development with data from two main sources as discussed below.

Primary source: Oral interviews were conducted with a total of 125 interviewees out of which
10 were Lecturers, 15 were freelance indigenous software developers and 100 were final year
students of computer Science.
Secondary source: documents like computer science journals, text books, laboratory manuals
and manuscripts, etc. The Internet was a major source of the secondary data source

Main findings: from the research that has been made we find out high arithmetic mean of
agreement that Object-oriented Programming is able to divided into units of task and tested
differently, Have the concept of objects, class, data abstraction, inheritance, and polymorphism,
enable programming in modules, aids team work better than procedure oriented programming,
makes it easy to modify existing codes for a re-use, Objects created for object oriented
programs can easily be reused in other programs, once an object is created knowledge of its
implementation is not necessary for its use. But find less with factors namely: presence of
graphical interface that allow for the design of a more attractive program interface than in
procedure oriented programming and breaking of tasks into smaller units.

CONCLUSIONS: based on the research we affirm that the effects of Object Oriented
Programming on modern software Development is very positive and makes software
development very fast to development.
REFERENCES
1. https://en.wikipedia.org/wiki/Assembly_language

2. https://en.wikipedia.org/wiki/Procedural_programming

3. Ambler, Scott (1st January 1998). "A Realistic Look at Object-Oriented Reuse".
www.drdobbs.com.
4. https://searchapparchitecture.techtarget.com/definition/object-oriented-programming-OOP

You might also like