Schedule for 04:547:430

(The part in italics is tentative and subject to changes.)

(Legend: OF = Objects First with Java)

Class Topics / Activities Resources/assignments
(Readings/work before class)
Labwork/homework
(During and/or after class)

* 1 *

Mon,
Sep 05

Labor Day, no class.

 

 

* 2 *

Wed,
Sep 07

Slides in HTML and PDF

Introduction to the course. Administration issues.

Programming. Object-Oriented Programming. Software Engineering.

Explore the course website and the OF website.

Download project files onto flash drive (and/or own laptop) and have them ready for the first class.

Play with Model.xls.

* 3 *

Mon,
Sep 12

Slides in HTML and PDF

Basic principles in Object-Oriented Design and Programming.

Classes and Objects.

Review OF ch.1.

In projects shapes add an abstract class Shape and move into it the common behavior and attributes of subclasses Circle, Square and Triangle.

A solution: pictureWithShapes.zip.

* 4 *

Wed,
Sep 14

Slides in HTML and PDF

Fundamental OO concepts.

Inheritance;
Composition;
Facade

Create a new project, cars, similar to picture, in which you define a class Car, with methods for moving cars forward and backward.

Read the "Typed Collections (Generics)" section of the Java 5 supplement from the BlueJ site.

Extra credits: In pictureWithShapes, provide methods for changing the colors of the wall and roof. Make sure that swapping between a color view and a black-and-white view still works.

* 5 *

Mon,
Sep 19

Slides in HTML and PDF

Classes

Polymorphism

Review OF ch.2.

Download and install NetBeans. Try to port the OF ch.1 and ch.2 projects to NetBeans.

In pictureWithShapes, use a Map to store the components.

* 6 *

Wed,
Sep 21

Slides in HTML and PDF

Object interaction

Abstraction

Review OF ch.3.

Build a JukeBox using a NumberDisplay.

Build a ClockDisplay that doesn't use the NumberDisplay. Use this template: SimpleClockDisplay.java.

* 7 *

Mon,
Sep 26

Slides in HTML and PDF

Interfaces vs. classes.
See chapter03.zip.

The Java collection library (slides in HTML and PDF).
See Collections.zip and Employees.zip.

Review OF ch.4.

Refactor ch.3's mail-system project, using more advanced Java collections.

Go through all the projects in ch.4 and refactor whenever it's possible.

* 8 *

Wed,
Sep 28

Slides in HTML and PDF

Grouping objects. Attempt all the challenge exercises in ch.4.  

* 9 *

Mon,
Oct 03

Slides in HTML and PDF

Packages and libraries.

Strings. See slides in HTML and PDF, and some examples.

Basic user interaction.
Tiger support for basic user interaction (java.util.Scanner).

Review OF ch.5.

See practice.zip and mailSystem.zip.

Homework: For each student in a class, assign a random colleague to test his/her work.

* 10 *

Wed,
Oct 05

Slides in HTML and PDF

Testing

Review OF ch.6.

 

* 11 *

Mon,
Oct 10

Slides in HTML and PDF

Handling errors.

Exceptions and assertions.

Go through OF ch.12.

Download and install Eclipse. Try to port the OF ch.6 projects to Eclipse.

 

* 12 *

Wed,
Oct 12

Slides in HTML and PDF

Handling errors. Finish exercises in ch.12.  

* 13 *

Mon,
Oct 17

Slides in HTML and PDF

Designing classes. Go through OF ch.7.  

* 14 *

Wed,
Oct 19

Refactoring zuul. Go through OF ch.7. zuul-even-better.zip,
zuul-for-images.zip,
zuul-with-images.zip

* 15 *

Mon,
Oct 24

Slides in HTML and PDF

Inheritance and polymorphism.

Assessment 1 uploaded, tentative version.

Go through OF ch.8. Homework: make the projects in ch.8 Java 5 compliant; complete the exercises in ch.8.

* 16 *

Wed,
Oct 26

Discussing the zuul project and the assignment.

Assessment 1 uploaded, final version.

Go through OF ch.7.  

* 17 *

Mon,
Oct 31

ASIST week.

Unsupervised work on assignment 1.

   

* 18 *

Wed,
Nov 02

ASIST week.

Unsupervised work on assignment 1.

   

* 19 *

Mon,
Nov 07

Slides in HTML and PDF

More Inheritance. Go through OF ch.9. Assignment 1 due in class !
(You may be asked to make one final change before submitting.)

* 20 *

Wed,
Nov 09

Slides in HTML and PDF

More Abstraction. Go through OF ch.10.  

* 21 *

Mon,
Nov 14

More Abstraction.

Assignment 2 problems.

Finish problems in OF ch.10.  

* 22 *

Wed,
Nov 16

Work on 2nd assignment - the Foxes & Rabbits simulation.    

* 23 *

Mon,
Nov 21

Slides in HTML and PDF

Discuss assignment 2.

Final version.

Go through OF ch.11. foxes-and-rabbits-v3.zip

* 24 *

Wed,
Nov 23

Slides in HTML and PDF

Thanksgiving week.

Work on assignment.

   

* 25 *

Mon,
Nov 28

Slides in HTML and PDF

Graphical User Interfaces Go through OF ch.11.  

* 26 *

Wed,
Nov 30

Slides in HTML and PDF

Graphical User Interfaces   Assignment 2 due.

* 27 *

Mon,
Dec 05

Slides in HTML and PDF

Graphical User Interfaces    

* 28 *

Wed,
Dec 07

Slides in HTML and PDF

Graphical User Interfaces    

* 29 *

Mon,
Dec 12

Slides in HTML and PDF

Final assignment.

Use SearchEngine.zip.