[1]
DejaVU Online:
Principles of Object-Oriented Software Development
(©)
Abstract data types, that is elements thereof, are generally realized by employing a hidden state. The state itself is invisible, but may be accessed and modified by means of the observations and operations specified by the type. See slide 1-ADT.
ADT = state + behavior
Objects may be regarded as embodying an (element of an) abstract data type. To use an object, the client only needs to know what an object does, not (generally speaking) how the behavior of the object is implemented. However, for a client to profit from the data hiding facilities offered by objects, the developer of the object must provide an interface that captures the behavior of the object in a sufficiently abstract way. The (implicit) design guideline in this respect must be to regard an object as a server that provides high level services on request and to determine what services the application requires of that particular (class of) object(s). See slide 1-respons.
object = information + responsibilities
Behavioral refinement
if B refines A then B may be used wherever A is allowed
OOP = Contracts + Refinements
|
Hush Online Technology
hush@cs.vu.nl
12/29/99 |
|
|