Presentation is loading. Please wait.

Presentation is loading. Please wait.

The Object Model Lecture OO02 Classes as Abstract Data Types

Similar presentations


Presentation on theme: "The Object Model Lecture OO02 Classes as Abstract Data Types"— Presentation transcript:

1 The Object Model Lecture OO02 Classes as Abstract Data Types
Understanding Classes and Objects

2 References Ambler, S., The Object Primer, Cambridge Univ. Press, 2001, Chapter 1 & 2. Booch, G., Object-oriented Analysis and Design, Benjamin Cumings, 1994, Chapter 1. Gamma, E., et al, Design Patterns, Addison Wesley, 1994, Chapter 1

3 Teaching Points The “Kind-of” Hierarchy What is an object?
What is a class? Your first pattern

4 Review What is an abstract data type?
How do multiple architectural views help to cope with complexity? A new kind of hierarchy is a new “kind hierarchy

5 Decomposition Things or objects in the problem domain
It is all in the way we think about the problem

6 Abstractions Abstract data types Kinds of things Relationships
inheritance aggregation use

7 Hierarchy Akind hierarchy Apart hierarchy

8

9 Example: Decomposition of an aircraft as a complex system
Remember information-hiding!

10 The Object Oriented Paradigm
No longer a tree of process invocations Now a network of cooperating objects

11 What is an Object? In-formally A tangible and/or visible thing
Something that may be apprehended intellectually Something toward which thought or action is directed

12 What is an Object? An object has: State (properties, values)
Behavior (modifiers, iterators, selectors, constructors, destructors) Identity (???)

13 What is a class? An abstraction or the Aessence@ of an object
represents a set of objects that share a common structure and common behavior (interface) A kind-of-things A single object is simply an instance of a class

14 Strengths of this kind of decomposition
Expression in vocabulary of the problem domain Strong information hiding

15 What is a Pattern? “A design pattern describes a commonly-recurring structure of communicating components that solve a general design problem in a particular context.” Gamma, et al.

16 Composite Pattern May be used to describe: File system
Graphics objects Aircraft Components etc.

17 Teaching Points The “Kind-of” Hierarchy What is an object?
What is a class? Your first pattern


Download ppt "The Object Model Lecture OO02 Classes as Abstract Data Types"

Similar presentations


Ads by Google