These pages summarize lecture content and provide links to slides, example code and relevant online resources.

Videos for lectures are available via links on these pages and in Minerva.

Slides & code are provided for personal use only; please do not upload this material anywhere!

  1. Introduction
  2. First Steps With Java & Git
  3. Control Flow & Strings
  4. Further Aspects of Java Syntax
  5. Object-Oriented Concepts
  6. Creating & Using Java Classes
  7. Arrays and Lists
  8. Exceptions and File I/O
  9. Sets, Maps & Other Collections
  10. Inheritance & Other Relationships
  11. Polymorphism and Abstract Classes
  12. Interfaces
  13. Enums and Inner Classes
  14. Other Aspects of Java
  15. Introduction to C++
  16. Using Classes in C++
  17. Object-Oriented Programming in C++