Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

OBJECT-ORIENTED ANALYSIS AND DESIGN CONCEPTS OF SPACE AND TIME Phần 4 ppsx
Nội dung xem thử
Mô tả chi tiết
OBJECT-ORIENTED ANALYSIS AND DESIGN 29
features it does have are sufficient to support the desired programming styles in the
desired application areas’ (1988, p. 11). Object-oriented programming languages are
still being developed and it is expected that new languages will emerge, acquiring
new features rapidly.
From the mid-1970s onwards the research and development in artificial intelligence
(AI) programming environments have also influenced the object-oriented paradigm.
LISP is one of the main programming languages used in AI systems, and several
object-oriented extensions of LISP have been created. LOOPS, Common LOOPS,
FLAVOURS, KEE, ART and New FLAVOURS are some examples in which a
semantically ample form of inheritance is proposed that differs from the one
encountered in most object-oriented programming languages such as Smalltalk. Here
values, in particular default values, can be inherited as well as attribute names. Graham
assures his readers that, from his point of view, ‘AI people have got it right and that
this kind of inheritance will gradually penetrate the world of object-oriented
programming’ (1994, p. 78).
With the maturing of the concepts in object-oriented programming languages and
their practical use in different application contexts, research interests have diversified,
focusing on object-oriented design methods:
Object-oriented design is a method of design encompassing the process of objectoriented decomposition and a notation for depicting both logical (class and object
structure) and physical (module and process architecture) as well as static and dynamic
models of the system under design. (Booch, 1994, p. 39)
Significant debate has occurred in this research area, mainly concerning whether an
object-oriented design method can be intrinsically independent of any programming
language, or whether current design methods are clearly attached to specific objectoriented programming languages. Most object-oriented design methods reveal the
influence of Booch’s pioneering work (Booch, 1986). In his original proposal, Booch
suggested a design method based upon some features of the ADA programming
language, using an object-oriented style. GOOD2
and HOOD3
are examples of ADAderived methods that enforce the top-down hierarchical decomposition approach
among objects but without supporting inheritance and polymorphism.
Also influenced by Booch’s work, OOSD4
provides a hybrid, low-level notation for
logical design of object-oriented methods in general. Although designed to be language
independent, OOSD has not been extended to a consistent object-oriented notation
due to its inability to deal with complex data structures and large numbers of methods.
OODLE5
is another example of a language-independent notation which advocates four
interrelated diagrams in order to support the Shlaer-Mellor approach to object-oriented
design. Booch’s revised design method (Booch, 1991, 1994) gives probably the most
2
General Object-Oriented Design method developed at NASA.
3
Hierarchical Object-Oriented Design method developed at the European Space Agency.
4
Object-Oriented Structure Design introduced by Wasserman, Pircher and Muller (1990).
5
Object-Oriented Design LanguagE is a design-specific component of the Shlaer-Mellor method (Shlaer
and Mellor, 1988).