Week 9 Class 16 Thu Mar 11 Posted: Mar 11

Class session:

  1. Announcements:
  1. Screencast: Project 3
  2. Screencast: UML Multiplicity notes Includes std::optional
  3. Exercise 42: UML Multiplicity Crossword
  4. Exercise 43: Name

    The class Name has multiple, single-value optional fields.

    Convert the code in the class Name to use std::optional instead of boolean flags. Convert and commit one part of the name at a time.

    Work carefully on this, or you will have a large number of compiler errors. Look at the code examples in the notes. Work vertically, not horizontally.

    Repository available via a GitHub Classroom posted on Brightspace.

  5. Screencasts: DockerReport: Inversion of Control

    A. Introduction & Add fields for callbacks
    B. Add fields and processing for callbacks
    C. Move value processing from while to callback
    D. Move rest of Docker Report YAML handling to callbacks
    E. Move YAML parsing loop into a new method parse()
    F. Make low-level YAML parsing methods private
    G. Make predicate methods const
    H. Move from constructor parameters to separate get methods for registering handlers

Screencast Folder: Class 16 Thu Mar 11

Exercise Due Date: 4 pm on Friday, Mar 12