Chapter 13: Object Oriented Design

Chapter Goals

The Software Life Cycle

The Software Life Cycle

The Software Life Cycle

CRC Cards

CRC Cards

Cohesion

Coupling

Relationships between Classes

Relationships between Classes

Implementing Associations

Example: Printing an Invoice

Example: Printing an Invoice (Requirements)

Example: Printing an Invoice (CRC Cards)

Example: Printing an Invoice (CRC Cards)

Example: Printing an Invoice (UML Diagrams)

Example: Printing an Invoice (Class and Function Comments)

Example: Printing an Invoice (Implementation)

By documenting first, you can share the documentation with others if you work in a team.

Example: Printing an Invoice (invoice.cpp)

Example: An Educational Game (Requirements)

Example: An Educational Game (CRC Cards)

Game
play  

 
   
 
 

Example: An Educational Game (CRC Cards)

Example: An Educational Game (UML Diagram)

Example: An Educational Game (Class and Function Comments)

Example: An Educational Game (clock.cpp)