1 / 11

Chapter 3: Object-Oriented Design

Chapter 3: Object-Oriented Design. Presentation slides for Object-Oriented Programming by Yahya Garout KFUPM Information & Computer Science Department. Outline. Responsibility Implies Noninterference Programming in the Small and in the Large Why Begin with Behavior? A Case Study in RDD

Download Presentation

Chapter 3: Object-Oriented Design

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. Chapter 3: Object-Oriented Design Presentation slides for Object-Oriented Programming by Yahya Garout KFUPM Information & Computer Science Department

  2. Outline • Responsibility Implies Noninterference • Programming in the Small and in the Large • Why Begin with Behavior? • A Case Study in RDD • The Interactive Intelligent Kitchen Helper • Working with Components • Identification of Components • CRC Cards-Recoding Responsibility • Giving Components a Physical Representation • The What/Who Cycle • Documentation

  3. Responsibility Implies Noninterference • The conventional programming proceeds largely by doing something to something else • One portion of code in a software system is often tied to many other sections of the system • A responsibility-driven design attempts to cut these links • This notion might at first seem no more than information hiding and modularity • Responsibility-driven design elevated information hiding from a technique to an art • One major benefit of object-oriented programming is the reuse of software subsystems

  4. Programming in the Small and in the Large • Programming in the small has the following attributes: • Code is developed by a single programmer who understand all aspects of a project • The major problem is the design and development of algorithms for dealing with the problem at hand • Programming in the large has the following features: • The software system is developed by a large team of programmers with no one understanding all aspects of the project • The major problem is the management of details and communication of information between diverse potions of the project

  5. Why Begin with Behavior? • Understood long before any other aspect • Can be described almost from the moment an idea is conceived • Can be described in terms meaningful to both programmer and client

  6. The Interactive Intelligent Kitchen Helper

  7. Working with Components

  8. Identification of Components

  9. Giving Components a Physical Representation

  10. The What/Who Cycle

  11. Documentation

More Related