Module I: Java Syntax

In this first module of the course, we presented the Java Language, in increasing levels of difficulty. Topics include:

Much of the knowledge contained in this module is assumed knowledge for the remaining two modules of this course, and definitely fair game on exam questions.

Module II: Object-oriented Design Fundamentals

In this middle module of the course, we presented object-oriented material that went much further than the Java syntax presented in Module 1. We specifically considered numerous concepts that go directly to the heart of Object-Oriented Design

Some core Java classes were presented. These are classes that I expect you are aware of for the exam:

We spent a lot of time working over the linked list concept. This was done, primarily, because the linked list is the fundamental dynamic data structure used in Computer Science. We developed functionality such as:

See closing notes on November 20th.

We also dedicated a good amount of time in this class on Unit testing, specifically with regards to the JUnit test framework that is integrated into Eclipse. As such you should be able to:

Module III: Object-oriented Design Guidelines

In this last module of the course, we presented less material in class, and focused more on addressing high-level concepts. These concepts have appeared in the class handouts, and as practical applications on the homeworks and the daily code examples:

The culmination of the experience from this third module will enable you to solve initial design problems as outlined here: