CPSC 210 202 2022W

Extended Description

The following broad topics will be covered. The main learning goals for each topic are also provided.

Data Abstraction

  • describe how data abstraction makes possible the construction of larger software systems
  • specify, use, test and implement a data abstraction in Java

Control Flow Models

  • produce inter- and intra-method control flow diagrams from Java code

Type Hierarchies, Polymorphism and Dispatching

  • trace the execution of Java source code that uses polymorphism, inheritance and dynamic dispatching
  • determine if one type is substitutable for another

Robust Data Abstractions

  • specify, test and implement a robust data abstraction using exceptions

Object-Oriented Design

  • record the design of an existing system using a UML class diagram
  • extract UML sequence diagrams from existing code
  • express a UML class diagram as a Java program
  • make effective use of the Java Collections Framework

Design Patterns

  • apply the Composite, Observer, and Iterator patterns to a given design problem
Course Info
Term 2
Mon Wed Fri
Time (start)
1:00 PM
Time (end)
2:00 PM
Date (start)
Date (end)