Course Schedule
Fall 2016

Note: this schedule is subject to change.

Week Topics Code/Resources Assignments Due
1
8/23-8/25
Introduction to Java
Variables
Expressions
Conditionals
Command Line I/O
SVN
Grading Rubric
HelloWorld.java
GoodbyeWorld.java
CoinValue.java
Self Test
GradeCalculator.java
Lab 1
2
8/30-9/1
Classes
Methods
Strings
Self Test
Name.java
NameDriver.java
Coin.java
CoinDriver.java
UserNameGenerator.java
UserNameDriver.java
Lab 2
3
9/6-9/8
Iteration
File Input, Exceptions, Command Args
Collections and ArrayLists
File Output
Autoboxing and Unboxing
Loops.java
ArrayListExample.java
FileInputWords.java
FileInputNumbers.java
FileInputCSV.java
words.txt
numbers.txt
csvexample.txt
4
9/13-9/15
Composition
Arrays
Student.java
StudentList.java
StudentListBuilder.java
StudentScoresDriver.java
Test.java
Lab 3
5
9/20-9/22
Exam 1 - Thursday 9/22 Exam 1 Review
Sample Exam 1
Project 1
6
9/27-9/29
Arrays
NumberList.java
NumberListDriver.java
TwoDArrays.java
TwoDArraysDriver.java
Lab 4
7
10/4-10/6
In-class Exercise
Inheritance
ComparableExample.java
Name.java
NameTester.java
Viewable.java
In-class Exercise
Lab 5
8
10/11-10/13
Inheritance
USFPerson.java
Faculty.java
Student.java
PersonTester.java
USFDatabase.java
Project 2
9
10/18-10/20
Fall Break 10/18 Lab 6
10
10/25-10/27
Exam 2 Exam 2 Review
Sample Exam 2
Lab 6
11
11/1-11/3
Last day to withdraw 11/4
Recursion
HashMaps
RecursionFun.java
Project 3
12
11/8-11/10
Recursion
HashMaps
HashMapFun.java
FileFinder.java
Lab 7
13
11/15-11/17
Linked Lists
Node.java
LinkedList.java
LinkedListDriver.java
LinkedListException.java
Project 4 - Due Friday!
14
11/22-11/24
Thanksgiving 11/24
15
11/29-12/1
Final Exam Review
Widget.java
WidgetList.java
WidgetDriver.java
ByValueComparator.java
ByNameComparator.java
Lab 8 - Due Wednesday
Project 5 - Due Wednesday
16
12/6
Thursday
12/15/2016
Final Exam Section 1 - 10am-noon
Final Exam Section 2 - 3pm-5pm
Early exams will not be given!