In this module we introduce Object Orientation as a paradigm and show how to design Object Oriented programs by using the Design Recipe and the ideas covered in this course. This module uses Java instead of Racket and introduces some of Java's basic syntax and computational model.

  1. Given a DrRacket structure, write the corresponding Java classes.
  2. Translate the auto-generated functions for a structrure in DrRacket to Java methods.
  3. Translate contracts to Java method signatures.
  4. Translate purpose statements to Javadoc.
  5. Given an itemization data definition, translate it to Java classes.
  6. Explain inheritance and subtypes for the enumeration examples.
  7. Given the data definition of a list, translate it to Java classes.
  8. Given a template for a function that consumes a list in Racket, translate it into Java methods.

  • No Readings.
TBD
TBD