Areas of Application of OOP Concept
Areas of Application of OOP Concept
engineers can be found in using OOP. Applications of OOP are gaining importance in
many areas. The most important area is the user interface design such as windows. It has
also got importance in real business systems as they are very complicated and use many
methods and OOP can simplify those. The promising areas includes the followings.
(i) Real Time Systems Design
(ii) Simulation and Modeling System
(iii) Object Oriented Database
(iv) Object Oriented Distributed Database
(v) Client-Sarver System
(vi) Hypertext, Hypermedia
(vii) Neural Networking and Parallel Programming
(viii) Decision Support and Office Automation Systems
(ix) CIM/CAD/CAM Systems
(x) AI and Expert Systems
1. Reusability: In OOPs programs functions and modules that are
written by a user can be reused by other users without any
modification.
2. Inheritance: Through this we can eliminate redundant code and
extend the use of existing classes.
3. Data Hiding: The programmer can hide the data and functions in a
class from other classes. It helps the programmer to build the secure
programs.
4. Reduced complexity of a problem: The given problem can be
viewed as a collection of different objects. Each object is responsible
for a specific task. The problem is solved by interfacing the objects.
This technique reduces the complexity of the program design.
5. Easy to Maintain and Upgrade: OOP makes it easy to maintain and
modify existing code as new objects can be created with small
differences to existing ones.
6. Message Passing: The technique of message communication
between objects makes the interface with external systems easier.
7. Modifiability: it is easy to make minor changes in the data
representation or the procedures in an OO program. Changes inside a
class do not affect any other part of a program, since the only public
interface that the external world has to a class is through the use of
methods;
The typical programmers advantages are:
Multiple-inheritance, where classes can inherit from multiple super
classes.
Multi-method dispatch, where operations can be specialized not just on a
single object, but on any of the arguments for the operation, or any
combination of those arguments.
Method combination, in which the means by which several applicable
operations to a particular set of arguments can be combined, is itself an
object-oriented specification, definable by the programmer.
Operations that can specialize on particular instances of classes, rather
than on just the broad class of the arguments.
Shared class variables (slots, attributes) that are shared by all instances
of a class, in addition to instance variables which are unique to each
instance.
Specification of the creation operation for instances of a class as an
object-oriented program, definable by the programmer.
The behaviour of operations on objects (methods) are themselves
defined as first-class objects, which can be specialized by the
programmer.
Access to classes themselves as first-class objects. The objects which
define the behaviour of classes are themselves classes, usable directly
by the programmer.