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

Object-Oriented Programming Paradigm For Software Development

Object-oriented programming (OOP) is a popular paradigm in software development that models real-world objects. The document discusses several technological advancements in OOP, including design pattern detection to improve software quality, object cloning to create copies of objects efficiently, and class co-evolution to understand interdependencies between classes and guide maintenance. Other advances are query-able source code, interfaces for defining class functionality without implementation details, and meta-models for generating design alternatives.
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)
101 views4 pages

Object-Oriented Programming Paradigm For Software Development

Object-oriented programming (OOP) is a popular paradigm in software development that models real-world objects. The document discusses several technological advancements in OOP, including design pattern detection to improve software quality, object cloning to create copies of objects efficiently, and class co-evolution to understand interdependencies between classes and guide maintenance. Other advances are query-able source code, interfaces for defining class functionality without implementation details, and meta-models for generating design alternatives.
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

Object-Oriented Programming Paradigm for Software Development

Abstract and personalization problems. Take for instance, a lot of


sophisticated apps are being produced and release in the
Object oriented programming paradigm in software
market today through the application of OOP. Almost desktop
development is one of the most popular methods in the
apps are being converted to mobile apps through Java, C++,
information technology industry and academia as well as in
PHP & MySQL, R, Python etc platform which form the
many other forms of engineering design. Software
testimony of OOP in the software industries. Software
development is a field of engineering that came into existence
developer has been revolving using procedural language for
owing to the various problems that developers of software
the past decade before the advent of OOP. The relationships
faced while developing software projects. This paper analyzes
between them is that procedural languages focus on the
some of the most important technological innovations in
algorithm but OOP focuses on the object model itself,
object oriented software engineering in recent times. The
therefore, making the software programming more visible and
advancements in Object technologies that have been analyzed
increasing the efficiency and usability of the existing object
here include object cloning, introspection and reflection, class
thereby reducing cost. The significant aspect of object
co-evolution, global software development contexts,
oriented objects is character, attributes and their modeling of
interfaces, namespaces, query-able source codes, meta-model
the software system, since, internal structure is time-
for generating design alternatives, magic methods, design
consuming and often imposes requirement barriers for
pattern detection, auto-active functional verification,
development. Objects is like blood capsule in OOP, it map
cohesion, coupling and Separation of Concerns (SoC). From
character with behaviour, thus enable software programmers
our analysis we predict further advancements in object
to map a real problem implementation and execution in the
technologies towards game development, metrics for software
problem domain. The concepts of OOP [1]–[7]such as
design analysis, addition to fundamental Object oriented
inheritance, encapsulation and polymorphism enable the
programming language features and distributed software
successful implementation of objects access and modification.
development.
Keywords: Application, Object, Oriented, Paradigm,
Software, Development, Concepts

Introduction
Object oriented programming (OOP) is like an element of
nature in the computing programming world where the
multidiscipline domain of life and professional fields of
engineers, educationist, scientist, project management,
programmers, system analyst and field researchers has been
involved. In recent time, OOP and Software development
industries are gaining advantages where the two phenomena
are emerging and converging to produce efficiency in
industries software that helps to solve specific organizational
object (the cloned object). The method within an
Object class is used to clone an object. In software
Technological Advancement in Object Oriented Programming development, object cloning technique saves the
Paradigm for Problem Solving extra processing task for creating the exact copy of
Discussed briefly are some technological advancement in an object.
object oriented programming paradigm for problem solving
during software development.,
c. Class Co-evolution
a. Design Pattern Detection It can be described as an implicit inter-dependence
Design patterns play a key role in software among classes which, when understood, can be
development process as it was created to document valuable in guiding subsequent evolution of the
reusable architectural proposals for producing high- system in question. This co-evolution relation can be
quality designs, help document. [20] Therefore, used as the basis for advice on maintenance activities
design pattern detection is described as advancement during software development [22]. [23] With co-
in OOP paradigm introduced to improve software evolution, patterns are formed, in addition to the
quality and accelerate software development. It is an members of the co-evolving clusters, report the
important concept used in the field of reverse nature of the interdependency between the co-
engineering used in identifying design patterns used evolving classes.
in the implementation of a software system. By
detecting design patterns from reusable software, it is
easier to recognize and verify those reusable parts in d. Query-able Source Code
software based system or figure out in the form of It is advancement in object oriented software
pre-developed components, or build them as reusable development processes where source code encode a
product [21]. query able and modifiable model of the applications
and utilizable by IDEs in these aspects [24].
b. Object Cloning
The object cloning is a way to create exact copy of
an object by transferring all its attribute to that same e. Interfaces
This is the input point between the user and the
system which serves as a class blueprint. It also
works with the object as defined(data types) which
determines exactly what can be done with the class,
without getting know the details of the
implementation-specific details. This allows software
developers to group classes that share some
functionality but do not necessarily share a
parent class.

f. Meta-model for generating design alternatives


A meta-model specifies the structure, the semantics,
and the constraints for a family of models in a certain
domain [25]. At times in most software development
activity, there are extensively used for prediction,
sensitivity analysis, pattern recognition, and design
optimization [26]. Therefore, in software
development, meta-model serves as an alternative to
most common code-based development techniques.`

g. Namespaces
Namespaces help you to more effectively manage
your code base by compartmentalizing various
libraries and classes according to context [27].

h. Introspection and Reflection


Introspection refers to making a program to look into
the object's attribute, like its name, parent class (if
any), properties, and methods. Reflection is about paradigm for problem solving during software development.
making a computer program to x-ray the structure of The knowledge of OOP paradigm when utilize will increase
a program as well as the modification of its behavior problem solving abilities of OOP by matching the problem
(specifically the values, meta-data, properties and with real world object then translated to code.
functions) of a program at runtime.

i. Magic Method
Magic Methods are vital concepts in Object Oriented
programming, allowing you to respond to specified
circumstances when using a specific object. It allows
you to tweak calls to methods or properties of a class
and update the object state when particular operation
occur.

j. Cohesion, Coupling and Separation of Concerns


Cohesion is the sticking together of responsibilities
within a module or in other wordsits complexity.
Coupling captures the complexity between
connecting different classes. While, Separation of
Concerns (SoC) is the idea that a software system
must be split into parts that do not overlap in
functionality.

k. Auto-Active Functional Verification


Auto-active Functional verifiers are OOP concepts
that provide an intermediate level of
computerization(automation) between fully
automatic systems and the interactive users supply
code with annotations as input while benefiting from
a high level of automation in the back-end [28].

These technological advancement in OOP helps to translate


our thoughts to a program. It makes possible for a problem to
solved exactly the same way human being could solve it in the
a real world. It is possible to construct large reusable
components using these object-oriented technologies.

4.1 Conclusion
Therefore, the increasing demand of software in the market
enterprise today due to numerous problem facing the human
being and organization is continuously creating gaps for
development of new technologies in OOP. Based on customer
and user request, software developers are rapidly finding
solution to solving problems. In effort to solve these
regenerating issues, new advanced technologies in the field of
OOP are continuously being created and additional
technologies are emerging. Software developers are faced
with code usability, refractory, maintainability, enhancement
of software features, developing from the scratch and many
more research are emerging in order to find considerable
approach to this clarion call in the software engineering
domain. Hence, this necessitated this paper focused on
technological advancement in object oriented programming
References
[1] Saha B. and Muhherjee D., (2017), “Analysis of
Applications of Object Orientation to Software
Engineering, Data Warehousing and Teaching
Methodologies”, International Journal of Computer
Sciences and Engineering, Vol. 5, Issue 9, pp 244-248.
[2] Nwaocha V., (2009), Object-Oriented Programming
Using C # Course Guide CIT 834, National Open
University, pp 88-110
[3] Onu F. U., (2016) “Comparative Study of Structured
and OOP Paradigms”, International Journal of
Advanced Research in Computer Science and
Software Engineering vol. 6, No 8, pp 30-39.
[4] Kiczales G., John L., Anurag M., Maeda C., Cristina
V., Jean-Marc L., and Irwin J., (1997), Aspect
Oriented Programming, proceedings of the European
Conference on Object-Oriented Programming
(ECOOP),Finland. Springer-Verlag LNCS 1241.
[5] Skelly J. F., (1997), Application Of Object Oriented
Programming Techniques In Front End Computers,
Paper submitted to: QCALEPCS ' 97 Beijing , China,
pp 3-5
[6] Schuster F., Tendyck T., Liebchen C., and Davi L.,
(2015), Counterfeit Object-oriented Programming: On
the Difficulty of Preventing Code Reuse Attacks in C+
+ Applications, 2015 IEEE Symposium on Security
and Privacy, pp 745-762
[7] Corral R., Morgado-Estevez A., Jimenez G., and Civit
A., (2014), A game-based approach to the teaching of
Object-oriented programming languages, Computer
and Education, Vol 73., pp 83-92
[8] Storey M., Zagalsky A., Filho F., Singer L., and
German D., (2017), How Social and Communication
Channels Shape and Challenge a Participatory Culture
in Software Development, IEEE Trans. Software
Engineering, vol 43, No. 2, pp 185-204
[9] Kurt B., (1999) Lecture Note on Object Oriented
Programming, Istanbul Technical University,
Computer Engineering Department, Version 0.1.2
[10] Kendal S., (2209), Object Oriented Programming
using Java, Bookboon eBook Company, ISBN 978-
87-7681- 501-1, 16P.

You might also like