Object Oriented Design. Object-Oriented Design Method for designing computer programs –Useful for...

8
Object Oriented Design

Transcript of Object Oriented Design. Object-Oriented Design Method for designing computer programs –Useful for...

Page 1: Object Oriented Design. Object-Oriented Design Method for designing computer programs –Useful for thinking about large problems Consider “objects” interacting.

Object Oriented Design

Page 2: Object Oriented Design. Object-Oriented Design Method for designing computer programs –Useful for thinking about large problems Consider “objects” interacting.

Object-Oriented Design

• Method for designing computer programs– Useful for thinking about large problems

• Consider “objects” interacting in the program– Example: a zoo, a gradebook

Page 3: Object Oriented Design. Object-Oriented Design Method for designing computer programs –Useful for thinking about large problems Consider “objects” interacting.

Objects

• Objects have state – what they know

• Objects have behaviors – what they can do

• Example: Car

Page 4: Object Oriented Design. Object-Oriented Design Method for designing computer programs –Useful for thinking about large problems Consider “objects” interacting.

Classes

• A programming construct to define the state and behaviors of a particular type of object– A class is the blueprint– An object is an instance of the class

Page 5: Object Oriented Design. Object-Oriented Design Method for designing computer programs –Useful for thinking about large problems Consider “objects” interacting.

CRC Cards

• Class, Responsibilities, Collaborators

(CRC)

• The CRC card method is a mechanism for

discovering the classes that will be part of a

program.

Page 6: Object Oriented Design. Object-Oriented Design Method for designing computer programs –Useful for thinking about large problems Consider “objects” interacting.

Example: A Card Gamehttp://max.cs.kzoo.edu/AP/OOD/OODPresentation/CRC4.html

• Classes: Card, Deck, Hand, Dealer

• Class: Card

– Responsibilities:

• Display self

• Report suit

• Report rank

– Collaborators

• None

Page 7: Object Oriented Design. Object-Oriented Design Method for designing computer programs –Useful for thinking about large problems Consider “objects” interacting.

Example: A Card Gamehttp://max.cs.kzoo.edu/AP/OOD/OODPresentation/CRC4.html

• Classes: Card, Deck, Hand, Dealer

• Class: Deck

– Responsibilities:

• Shuffle

• Deal

• Report size

– Collaborators

• Contains cards

Page 8: Object Oriented Design. Object-Oriented Design Method for designing computer programs –Useful for thinking about large problems Consider “objects” interacting.

Exercises

1.Form groups of 2 or 3 and use the CRC

method to design a coffee machine. Start

with a coffee machine that can dispense

black coffee or coffee with cream. Each

costs 1.00.