Anda di halaman 1dari 2

OBJECT ORIENTED PARADIGM

http://www.tutorialspoint.com/object_oriented_analysis_design/ooad_object_oriented_paradigm.htm
Copyright tutorialspoint.com

A Brief History
The object-oriented paradigm took its shape from the initial concept of a new programming
approach, while the interest in design and analysis methods came much later.

The first objectoriented language was Simula Simulationofrealsystems that was developed in
1960 by researchers at the Norwegian Computing Center.

In 1970, Alan Kay and his research group at Xerox PARK created a personal computer named
Dynabook and the first pure object-oriented programming language OOPL - Smalltalk, for
programming the Dynabook.

In the 1980s, Grady Booch published a paper titled Object Oriented Design that mainly
presented a design for the programming language, Ada. In the ensuing editions, he extended
his ideas to a complete objectoriented design method.

In the 1990s, Coad incorporated behavioral ideas to object-oriented methods.

The other significant innovations were Object Modelling Techniques OMT by James Rumbaugh and
Object-Oriented Software Engineering OOSE by Ivar Jacobson.

Object-Oriented Analysis
ObjectOriented Analysis OOA is the procedure of identifying software engineering requirements
and developing software specifications in terms of a software systems object model, which
comprises of interacting objects.

The main difference between object-oriented analysis and other forms of analysis is that in object-
oriented approach, requirements are organized around objects, which integrate both data and
functions. They are modelled after real-world objects that the system interacts with. In traditional
analysis methodologies, the two aspects - functions and data - are considered separately.

Grady Booch has defined OOA as, Object-oriented analysis is a method of analysis that examines
requirements from the perspective of the classes and objects found in the vocabulary of the
problem domain.

The primary tasks in object-oriented analysis OOA are:

Identifying objects
Organizing the objects by creating object model diagram
Defining the internals of the objects, or object attributes
Defining the behavior of the objects, i.e., object actions
Describing how the objects interact

The common models used in OOA are use cases and object models.

Object-Oriented Design
ObjectOriented Design OOD involves implementation of the conceptual model produced during
object-oriented analysis. In OOD, concepts in the analysis model, which are
technologyindependent, are mapped onto implementing classes, constraints are identified and
interfaces are designed, resulting in a model for the solution domain, i.e., a detailed description
of how the system is to be built on concrete technologies.

The implementation details generally include:

Restructuring the class data ifnecessary,


Implementation of methods, i.e., internal data structures and algorithms,
Implementation of control, and
Implementation of associations.

Grady Booch has defined object-oriented design as a method of design encompassing the
process of object-oriented decomposition and a notation for depicting both logical and physical as
well as static and dynamic models of the system under design.

Object-Oriented Programming
Object-oriented programming OOP is a programming paradigm based upon objects
havingbothdataandmethods that aims to incorporate the advantages of modularity and reusability.
Objects, which are usually instances of classes, are used to interact with one another to design
applications and computer programs.

The important features of objectoriented programming are:

Bottomup approach in program design


Programs organized around objects, grouped in classes
Focus on data with methods to operate upon objects data
Interaction between objects through functions
Reusability of design through creation of new classes by adding features to existing classes

Some examples of object-oriented programming languages are C++, Java, Smalltalk, Delphi, C#,
Perl, Python, Ruby, and PHP.

Grady Booch has defined objectoriented programming as a method of implementation in which


programs are organized as cooperative collections of objects, each of which represents an
instance of some class, and whose classes are all members of a hierarchy of classes united via
inheritance relationships.
Loading [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js

Anda mungkin juga menyukai