Definition About Object Oriented Programming, Design, and Analysis
Object-oriented Programming
What, then, is object-oriented
programming (OOP)? We define it as follows:
Object-oriented programming is 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.
There are three important parts
to this definition: (1) Object-oriented programming uses objects, not
algorithms, as its fundamental logical building blocks (the “part of” hierarchy
we introduced in Chapter 1); (2) each object is an instance of some class; and
(3) classes may be related to one another via inheritance relation-ships (the
“is a” hierarchy we spoke of in Chapter 1). A program may appear to be object-oriented,
but if any of these elements is missing, it is not an object-oriented program.
Specifically, programming without inheritance is distinctly not object-oriented;
that would merely be programming with abstract data types.
By this definition, some
languages are object-oriented, and some are not. Strous-trup suggests that “if
the term ‘object-oriented language’ means anything, it must mean a language
that has mechanisms that support the object-oriented style of programming well.
. . . A language supports a programming style well if it provides facilities
that make it convenient to use that style. A language does not support a
technique if it takes exceptional effort or skill to write such programs; in that
case, the language merely enables programmers to use the techniques” [33]. From
a theoretical perspective, one can fake object-oriented programming in non-object-oriented
programming languages like Pascal and even COBOL or assembly language, but it
is horribly ungainly to do so.
Object-Oriented Design
The emphasis in programming
methods is primarily on the proper and effective use of particular language
mechanisms. By contrast, design methods emphasize the proper and effective
structuring of a complex system. What, then, is object-oriented design (OOD)?
We suggest the following:
Object-oriented design is 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.
There are two important parts to
this definition: object-oriented design (1) leads to an object-oriented
decomposition and (2) uses different notations to express different models of
the logical (class and object structure) and physical (module and process
architecture) design of a system, in addition to the static and dynamic aspects
of the system.
The support for object-oriented
decomposition is what makes object-oriented design quite different from
structured design: The former uses class and object abstractions to logically
structure systems, and the latter uses algorithmic abstractions. We will use
the term object-oriented design to refer to any method that leads to an
object-oriented decomposition.
Object-oriented Analysis
The object model has influenced
even earlier phases of the software development lifecycle. Traditional
structured analysis techniques, best typified by the work of DeMarco [35],
Yourdon [36], and Gane and Sarson [37], with real-time extensions by Ward and Mellor
[38] and by Hatley and Pirbhai [39], focus on the flow of data within a system.
Object-oriented analysis (OOA) emphasizes the building of real-world models,
using an object-oriented view of the world:
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.
How are OOA, OOD, and OOP related? Basically, the
products of object-oriented analysis serve as the models from which we may start
an object-oriented design; the products of object-oriented design can then be
used as blueprints for completely implementing a system using object-oriented
programming methods.
Informasi yang sangat bagus dan berguna. Ditunggu untuk informasi berikutnya. Thanks gan
ReplyDeleteSilahkan berkunjung di intanqq
Informasi yang sangat bagus dan berguna. Ditunggu untuk informasi berikutnya. Thanks gan
ReplyDeleteSilahkan berkunjung di intanqq
kristalpoker merupakan Situs Judi Bandar Poker Dan Bandar sakong Terpercaya Di Indonesia
ReplyDeletekristalpoker menyediakan 7 GAME dalam 1 Web dan hanya dengan 1 ID,
Game yang di sediakan oleh kristalpoker :
- Sakong (New Game)
- Bandar Poker (New Game)
- BandarQ (Hot Game)
- Poker
- Domino
- Capsa Online
- AduQ
Kelebihan Bermain Di kristalpoker :
- BONUS TURNOVER 0.3% SETIAP HARI
- BONUS XTRA TURNOVER SETIAP MINGGUNYA
- BONUS REFERAL 10% +10% SEUMUR HIDUP!!
- MIN DEPO IDR 15.000 dan Proses super cepat 1 menit.
- Bisa dimainkan di Smartphone Versi Android dan Iphone.
Info Lebih Lanjut Bisa Hub kami Di
pin bbm : 2AE18F26
facebook : kristalpoker99@gmail.com
phone : +855969692742
we chat : kristalpoker