1 / 17

The Object Model

The Object Model. Lecture OO02 Classes as Abstract Data Types Understanding Classes and Objects. 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.

tyrone-todd
Download Presentation

The Object Model

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

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 of@ hierarchy

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

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

  7. Akind of@ hierarchy Apart of@ hierarchy Hierarchy

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

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

  10. 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

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

  12. 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

  13. Strengths of this kind of decomposition • Expression in vocabulary of the problem domain • Strong information hiding

  14. 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.

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

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

More Related