1 / 8

Object-Oriented Development

Object-Oriented Development. Use OO perspective throughout analysis/design/programming stages Object-oriented analysis Object-oriented design Object-oriented programming Transition between stages should be seamless each stage introduces additional detail. Object-Oriented Design Features.

raine
Download Presentation

Object-Oriented Development

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. Object-Oriented Development • Use OO perspective throughout analysis/design/programming stages • Object-oriented analysis • Object-oriented design • Object-oriented programming • Transition between stages should be seamless • each stage introduces additional detail Object-Oriented Design

  2. Object-Oriented DesignFeatures • Information hiding • manages complexity • Evolution advantage: • can change implementation “freely” • Generalization and inheritance • design (and implementation) reuse • advantages with evolution (specifically specialization) Object-Oriented Design

  3. Object-Oriented DesignGeneralization and Inheritance • Generalization • Identifying what different classes of objects have in common • Inheritance • How generalization is supported in many OO languages • Representation inheritance vs. Interface inheritance Object-Oriented Design

  4. Object-Oriented DesignGeneralization and Inheritance Object-Oriented Design

  5. Object-Oriented DesignGeneralization and Inheritance • An abstraction mechanism which may be used to classify entities • A reuse mechanism at both the design and implementation (programming) level • Inheritance graph • a source of organizational knowledge about domains and systems Object-Oriented Design

  6. Concurrency Servers vs. Active Objects • Servers • Server controlled access to object • Each method call starts a process • Locking ensures against interference among threads in object • Active Objects • Object modeled as a process, always updating internal state Object-Oriented Design

  7. Concurrency Language Support In Java: • Servers • Synchronized methods on all classes (via inheritance from class Object) • Active Objects • Thread interface Object-Oriented Design

  8. Object-Oriented DesignDesign Process • Define context and modes of use • Design system architecture • Identify principle objects • Design/model principal objects • Specify object interfaces Object-Oriented Design

More Related