Schedule of topics and readling list

This is a tentative calendar. It is subject to change. The lecture slides are available in Piazza.

Week Number Date Topics and due dates Reading
Week 1 Jan. 24 Course outline and pretest
Jan. 26 Getting started with Java, SVN For loops, How to print
Week 2 Jan. 31 Scanner, Command Line I/O, Variables 2.2~2.3, 2.6
Feb. 1 Lab 1 due
Feb. 2 Programming Environment Setup
Starting a lab in Eclipse
Scanner with a File and Exceptions
11.6
Week 3 Feb. 7 Arrays, Classes
Feb. 8 Lab 2 due
Feb. 9 Using Classes and Objects, Classes 3.1~3.2
Week 4 Feb. 14 ArrayList, 2-dimensional arrays 5.6, 8.6
Feb. 15 Lab 3 due
File argument demo
Feb. 16 Writing Classes - Constructors 4.1~4.5
Week 5 Feb. 21 Class Visibility 4.1~4.5, Member Variables
Feb. 22 Project 1 due
Feb. 23 Review for Midterm 1
Week 6 Feb. 28 Midterm 1
Mar. 2 Inheritance (1)
9.1~9.3
Week 7 Mar. 7 Inheritance (2)
9.3~9.5
Mar. 8 Project 2 due
Mar. 9 Exceptions in Polymorphism
11.1~11.6
Week 8 Mar. 14-16 Spring break
Week 9 Mar. 21 More Exceptions
11.1~11.6
Mar. 22 Lab 4 due
Mar. 23 Interface
10.3
Week 10 Mar. 28 Polymorphism 10.1~10.3
Mar. 29 Lab 5 due
Mar. 30 Review for Midterm 2
Week 11 Apr. 4 Midterm 2
Apr. 6 Selection Sort and HashMap
Selection Sort with Gypsy Dancing
10.4
Week 12 Apr. 11-13 Insertion Sort and Searching
Insert Sort with Romanian Dancing
10.5
Apr. 12 Project 3 due
Week 13 Apr. 18 Recursion (1)
Play Tower of Hanoi
12.1~12.3
Apr. 19 Project 4 due
Apr. 20 Recursion (2) 12.4
Week 14 Apr. 25 Recursion in Sorting and Searching
Apr. 26 Lab 6 due
Apr. 27 Linked Lists (1) 13.1~13.2
Week 15 May 2 Linked Lists (2) 13.1~13.2
May 3 Lab 7 due
May 4 Linked Lists (3) 13.1~13.2
Week 16 May 9 TBD
May 10 Project 5 due
May 11 Final exam review
Study Guide
Final week May 18 Final exam at HR 235 at 12:30pm