CS56, Fall 2016
(Looking for Teams? They were moved to the end of the page—please scroll down.)
Labs:
num |
ready? |
description |
assigned |
due |
lab00 |
true |
Getting Started |
Thu 09/22 09:30AM |
Thu 09/29 09:00PM |
lab01 |
true |
Tools for java development |
Thu 09/29 04:00PM |
Wed 10/05 11:59PM |
lab02 |
true |
Polynomials |
Thu 10/06 04:00PM |
Wed 10/12 11:59PM |
lab03 |
true |
First look at Legacy Code |
Thu 10/13 04:00PM |
Wed 10/26 12:00PM |
Midterm Exam |
lab04 |
true |
Intro to GUIs, Graphics |
Thu 10/20 04:00PM |
Sat 10/29 12:00PM |
lab05 |
true |
Legacy Code Next Steps |
Sun 10/30 05:30PM |
Wed 11/09 05:00PM |
lab06 |
true |
Recursive Descent Parsing |
Mon 11/07 12:30PM |
Mon 11/14 11:59PM |
lab07 |
true |
Finishing up your legacy code project |
Wed 11/09 05:01PM |
Sun 11/20 11:59PM |
lab08 |
true |
Continue work on legacy code, perhaps try web programming |
Thu 11/17 04:00PM |
Thu 11/17 07:00PM |
lab09 |
true |
Wrapping up your legacy code project (leaving a legacy) |
Thu 11/17 04:00PM |
Thu 12/01 07:00PM |
Homework:
num |
ready? |
description |
assigned |
due |
h00 |
true |
HFJ 1,2: Java basics |
Mon 09/26 12:30PM |
Wed 09/28 12:30PM |
h01 |
true |
HFJ 3,4: Primitives, References, Instance Variables, Methods |
Wed 09/28 12:30PM |
Mon 10/03 12:30PM |
h02 |
true |
HFJ 5,6: Random, ArrayList, first look at the Java API |
Thu 09/29 04:00PM |
Wed 10/05 12:30PM |
h03 |
true |
HFJ 7,8: Inheritance, Polymorphism, Abstract Classes |
Thu 09/29 04:00PM |
Thu 10/06 04:00PM |
h04 |
true |
HFJ 9,10,11: Constructors, Statics, Exceptions |
Thu 09/29 04:00PM |
Fri 10/07 12:30PM |
h05 |
true |
HFJ 12: Intro to Java GUIs |
Mon 10/03 12:30PM |
Mon 10/10 12:30PM |
h06 |
true |
HFJ 12, 13: More on GUIs |
Mon 10/03 12:30PM |
Wed 10/12 12:30PM |
Midterm E01 |
h07 |
true |
Serialization (HFJ 14) |
Mon 10/10 12:30PM |
Thu 10/13 04:00PM |
h08 |
true |
Threads and Sockets (Networking) (HFJ 15) (Gradescope submission) |
Mon 10/10 12:30PM |
Fri 10/14 08:00PM |
h09 |
true |
Data Structures (HFJ 16) |
Thu 10/13 04:00PM |
Mon 10/17 12:30PM |
h10 |
true |
Packages and JAR files |
Thu 10/20 04:00PM |
Mon 10/24 12:30PM |
h11 |
true |
HFDP: Chapter 1 |
Thu 10/20 04:00PM |
Wed 10/26 12:30PM |
h12 |
true |
Observer Design Pattern (HFDP 2) |
Thu 10/20 04:00PM |
Thu 10/27 04:00PM |
h13 |
true |
The Decorator Pattern (HFDP 3) |
Mon 10/24 12:30PM |
Mon 10/31 12:30PM |
h14 |
true |
The Decorator Pattern (HFDP 3, part 2), and the Open-Closed Principle |
Mon 10/24 12:30PM |
Wed 11/02 12:30PM |
h15 |
true |
The Factory Pattern |
Mon 10/31 12:30PM |
Thu 11/03 04:00PM |
h16 |
true |
Parsing and the Visitor Design Pattern |
Mon 11/07 12:30PM |
Thu 11/10 04:00PM |
ic00 |
true |
Code Review Exercise |
Thu 10/27 04:00PM |
Thu 10/27 04:50PM |
Exams
num |
ready? |
description |
exam date |
e01 |
true |
Midterm Exam |
Wed 10/19 12:30PM |
e02 |
true |
Midterm Exam |
Wed 11/16 12:30PM |
e03 |
false |
Final Exam |
Tue 12/06 12:00PM |
Lectures
num |
date |
description |
Lecture 1 |
Mon 09/26 |
Orientation to the course |
Lecture 2 |
Wed 09/28 |
Continuation of introduction to git/github and Java basics |
Lecture 3 |
Mon 10/03 |
More on git/github and Java basics |
Lecture 4 |
Wed 10/05 |
== vs. .equals |
Lecture 5 |
Mon 10/10 |
hashCode(), java.util.HashTable |
Lecture 6 |
Wed 10/12 |
Legacy code, and preparation for lab03 |
Lecture 7 |
Mon 10/17 |
Review for Midterm Exam E01 |
Lecture 8 |
Mon 10/24 |
Intro to Tokens, FSAs |
Lecture 9 |
Wed 10/26 |
More on Tokens, FSA |
Lecture 10 |
Mon 10/31 |
corgis databases, ant properties, sorting with lambdas |
Lecture 11 |
Wed 11/02 |
Factory Design Pattern, instanceof as a code smell, Parsing |
Lecture 12 |
Mon 11/07 |
tbd |
Lecture 13 |
Wed 11/09 |
Information about lab05 deadline, and legacy code progress |
Lecture 14 |
Mon 11/14 |
review; lambda functions again, GUI review |
Lecture 15 |
Mon 11/21 |
tbd |
Lecture 16 |
Wed 11/23 |
Optional: Web Apps (in Java, and other languages) |
Lecture 17 |
Mon 11/28 |
tbd |
Final Lecture |
Wed 11/30 |
tbd |