The schedule below represents my current best estimate concerning due
dates (and everything else). I am providing this information to give
you a general idea of the pace and timing of the class. This schedule
will certainly change as the semester progresses.
Readings should be completed before class on the day they are
listed. Readings followed by (s) are supplemental. You are not
required to complete the supplemental readings, but you may find them
useful.
Note that all Programming Assignments are due on the Sunday following
the date indicated on the schedule. For example, PA#1 is due on
Sunday, January 22nd at 11:00 PM.
Unless otherwise noted, all readings below are from Starting Out
With Java, 4th edition, by Tony Gaddis.
WEEK |
DATE |
TOPIC/LAB |
READING |
DUE |
|
1. Warm-Up |
01-09 |
BASH Shell Typographic Conventions |
University of Surrey Linux Tutorial (s) |
|
|
01-10 |
Review Data Types/Structures Clicker Questions (.pdf) |
2, 3, 4.1-4.7, 4.9 |
|
|
01-11 |
Experience with Objects |
|
|
|
01-12 |
Object Review Exercises (.pdf) Point.java, Rectangle.java |
5, 6.1-6.5 8.1 - 8.3, 9 |
|
|
2. Exceptions and I/O |
01-16 |
MLK Day - No Lab |
|
|
|
01-17 |
Exceptions (.pdf) Calculator.java CalculatorLoop.java |
12.1 |
|
|
01-18 |
Experimenting with Exceptions |
|
|
|
01-19 |
I/O Basics (.pdf) SimpleEditor.java NumberFormatDemo.java |
4.10 Java I/O Tutorial (s) |
|
|
3. Multidimensional Arrays |
01-23 |
Experimenting with I/O |
|
|
|
01-24 |
Multidimensional Arrays Handout.txt Matrix.java LTMatrix.java |
8.9-8.10 |
|
|
01-25 |
Experimenting with MD-Arrays |
|
PA1 YUtil.java |
|
01-26 |
MD-Array Exercises |
|
|
|
4. Software Design |
01-30 |
Practice with MD-Arrays Array2D.java |
|
|
|
01-31 |
Clicker Questions Enumerated Types Worksheet |
9.9, 12.2 Java Tutorial (s) |
|
|
02-01 |
Experimenting with Enumerated Types |
|
|
|
02-02 |
Designing Classes Design Worksheet |
6.7 |
|
|
5. Software Design and OOP |
02-06 |
Practice with Design |
|
PA2 YGame.java YPlayer.java TextDriver.java |
|
02-07 |
Design Discussion UMLPA1.pdf Introduction to Testing |
|
|
|
02-08 |
Review |
|
|
|
02-09 |
EXAM 1 |
|
|
|
6. Testing |
02-13 |
Testing Lab 1 |
JUnit Cookbook XP Unit Testing |
|
|
02-14 |
Assessment Day |
|
|
|
02-15 |
Testing Lab 2 |
|
|
|
02-16 |
More Testing (.pdf) |
|
PA3 |
|
7. Polymorphism |
02-20 |
Exam Follow-Up Lab DocumentTest.java |
|
|
|
02-21 |
Inheritance (.pdf) |
11.1-11.3 |
|
|
02-22 |
Experimenting with Specialization |
|
|
|
02-23 |
Polymorphism Clicker Questions (.pdf) Instruments.txt |
11.4-11.7 |
|
|
8. Inheritance |
02-27 |
Experimenting with Polymorphism through Inheritance |
|
|
|
02-28 |
Abstract Classes Clicker Questions (.pdf) Safari Design Exercise |
11.8 |
|
|
02-29 |
Experimenting with Abstract Classes |
|
|
|
03-01 |
Inheritance Wrap-Up, Generics Review quiz (.pdf) Solutions (.pdf) |
8.13, ArrayList |
|
|
|
03-05 |
SPRING BREAK |
|
|
|
03-06 |
SPRING BREAK |
|
|
|
03-07 |
SPRING BREAK |
|
|
|
03-08 |
SPRING BREAK |
|
|
|
9. Interfaces |
03-12 |
Debugging Lab |
|
|
|
03-13 |
Interfaces Clicker Quiz (.pdf) Interface Worksheet (solutions) Rank.java |
11.9 |
|
|
03-14 |
Experimenting with Interfaces |
|
|
|
03-15 |
Design, Generics, Varargs Spinner.java SpinDriver.java safari.png |
Generics Tutorial (s) |
PA4 (3/18) Ingredient.java IngredientList.java Unit.java IngredientTest.java UnitTest.java |
|
10. Recursion |
03-19 |
Polymorphism Through Interfaces |
|
|
|
03-20 |
Recursion (.pdf) |
15 |
|
|
03-21 |
Tracing Recursive Methods |
|
|
|
03-22 |
Recursion Clicker Questions (.pdf) Recursion Worksheet (.pdf) Coding Bat Site |
|
|
|
11. Recursion |
03-26 |
Experimenting with Recursion |
|
|
|
03-27 |
Midterm Review |
|
|
|
03-28 |
CodingBat Recusion Lab |
|
|
|
03-29 |
EXAM 2 |
|
|
|
12. Collections |
04-02 |
Using the JAR Utility |
|
|
|
04-03 |
Introduction to Collections (.pdf) |
|
PA5 |
|
04-04 |
Experimenting with Collections I |
|
|
|
04-05 |
Stacks and Queues |
|
|
|
13. Collections |
04-09 |
Experience With Data Structures RectangularArray.java |
|
|
|
04-10 |
Collection Design Exercise (.pdf) |
|
|
|
04-11 |
Collection Implementation RectangularArray.java |
|
|
|
04-12 |
User Interfaces (.pdf) GUIDemo.java |
7.1-7.2, 13.1, 13.5 |
PA6 (4/15) |
|
14. GUI |
04-16 |
User Interfaces Lab |
|
|
|
04-17 |
Layout and 2D Graphics (Dr. Bernstein's slides) Sketcher.java SketchCanvas.java |
7.4 Java Layout Tutorial (s) |
|
|
04-18 |
Experimenting with 2D Graphics |
|
|
|
04-19 |
Revisit Linked Structures ArrayQueue Visualization LinkedQueue Visualization |
|
|
|
15. Wrap Up |
04-23 |
Experimenting with Collections II START WITH SECTION 3! |
|
|
|
04-24 |
Work Day for PA7 |
|
|
|
04-25 |
Final Exam - Coding |
|
|
|
04-26 |
Review Sample Questions (Bernstein) |
|
PA7 (4/29) |
|
16. Exam Week |
|
|
|
|
|
05-01 |
Written Final (1:00-3:00) |
|
|
|
|
|
|
|
|
|
|
|
|
|