CompSci 108
Spring 2012
The Software Studio
Look here for video recordings of the lectures.

The exact order and details of these topics is subject to change during the semester based on the pace needed, but we will try to set them at least two weeks in advance. As much as possible, materials discussed in class will be posted here in case you miss class.

Each reading assignment has a quiz in Sakai. The quiz is always due 1 hour before class begins.

  Monday Tuesday Wednesday Thursday Friday
Introductions and a Review of the Basics of Objects 1/9
1/10
1/11
First Day of Class
1/12
Basics of classes
notes
1/13
Basics of classes 2
notes

For readings see the
Test and Quiz section in Sakai
Subclasses to Remove Code Duplication 1/16
MLK Day!
1/17

Code complete on Picassa #1 8AM (submit via Sakai)
Why if statements are bad
notes
1/18
1/19

Construction troubles
notes

(Optional) HFDP Chapter 1
GOF Book Chapter 1

1/20
Introduction to Design Patterns
notes

(Optional) HFDP 109-135
GOF Book, Factory Method Pattern 107-116

Writing Clean Code 1/23
1/24
notes

Code Smells

1/25
1/26
Design on Picassa #1 due

Code Smells 2
notes
1/27
Names and functions - clean code
notes

Reading available in resource section on Sakai

Odds and Ends 1/30
1/31

Template Method Strategy and Picassa
notes
Code complete on Picassa #2 due
2/1
2/2

Git 1
notes

look at Sakai resource section on GIT

2/3

notes Composite Pattern

Optional HFDP starting on page 353 GoF starting on page 163


  Monday Tuesday Wednesday Thursday Friday
Source Control 2/6
2/7

Final Picassa Submission

Source Control #2
Git mini-assignment released
2/8
2/9

Reflections on picassa
notes
Tivoo Released
2/10
Tivoo: XML Parsing and HTML Outputting
notes

The Decorator Pattern- GOF book
Check resource section on sakai for Pipes and Filters

Design of TiVoo 2/13
Git mini-assignment due 8AM
2/14

Code complete on Tivoo Prototype due 8AM

Pipes and Filters
2/15
2/16
Code complete on Tivoo Part1 due 8AM

Exceptions
2/17
GUIs
Classic GUI Patterns 2/20
Tivoo Part 1 due
2/21
Static and Global
2/22
2/23
Design signoff on Tivoo Part1 due 8AM

Observer
2/24
Model View Controller
Odds and Ends 2/27
Code complete on Tivoo Part2 due 8AM

2/28

UML
2/29
3/1
Debugging
3/2
Design Signoff on Tivoo Part2 due 8AM

Tivoo Part3 due 8AM

Big Ball of Mud

  Monday Tuesday Wednesday Thursday Friday
  3/5
Spring Break
3/6
Spring Break
3/7
Spring Break
3/8
Spring Break
3/9
Spring Break
Review 3/12
3/13
Review
3/14
3/15
Midterm
3/16
Golden T Game Framework
Documenting Design 3/19
Make your own game assigned
3/20
How to design an API
3/21
3/22

How to get your API used
3/23
How to Make a Persuasive Design Doc
Organizational Stuff 3/26
Game due
Game initial API design assigned
3/27

Mike's Guide to a Sucessful Project
3/28
3/29
Config Files
3/30
Game initial API submitted

  Monday Tuesday Wednesday Thursday Friday
Refactoring/Powerful Patterns 4/2
4/3
4/4
4/5
4/6

Milestone 1 Implementation done.  Design reflection 1 due.
Gotten feedback
Testing 4/9
4/10
4/11
4/12
4/13
Revised Team Design Due
Milestone 2 Implementation done.  Design reflection 2 due.
Reflection/Generics/Other advanced features 4/16
4/17
4/18
4/19
4/20
Milestone 3 Implementation done.  Design reflection 3 due.
Gotten feedback
Looking forward 4/23
4/24
4/25
4/26
4/27
Milestone 4 Implementation done.  Design reflection 4 due.
Gotten feedback
  4/30
5/1
5/2
5/3
5/4
CS108 Final 2pm-5pm