Computer Science 245

Programming II: Object-Oriented Design
Fall 2011
Thomas VanDrunen



Meeting time: MWF 12:45-1:50 pm.
Meeting place: Science 131

Office hours: MThF 3:15-5:00 pm; Th 9:15-11:00 am.
Contact: Sci 163 ; 752-5692; Thomas.VanDrunen@wheaton.edu
http://csnew.wheaton.edu/~tvandrun/cs245


Syllabus
Style and documentation requirements


Final exam: Wednesday, Dec 14, 10:30 AM


Moon's dayWoden's dayThor's dayFrigga's day

Aug 22

NO CLASS

Aug 24

Introduction to C

Aug 25

Trying out C

lab 1

Aug 26

C Functions and prototypes; compiling and linking; the preprocessor

Aug 29

Loop invariants

Aug 31

First try at analysis

Sept 1

Counting comparisons

Pre-lab reading
lab 2
proj 1, due Sept 12

Sept 2

Recursive sorting/analysis

Sept 5

NO CLASS

Sept 7

Structs

Sept 8

Structs

lab 3

Sept 9

Review OO

Sept 12

Review linked lists

proj 1 due.
proj 2, due 9/23

Sept 14

Abstract Data Types; review collections

Sept 15

Revision control system

Pre-lab reading
lab 4

Sept 16

Software lifecycle; Javadoc; Eclipse; Mercurial

Sept 19

Concurrency concepts

Sept 21

Concurrency in Java

Sept 22

Concurrency

lab 5

Sept 23

Review GUI

proj 3, due 10/10

Sept 26

Review

Sept 28

TEST

Sept 29

Adventure game

lab 6

Sept 30

Design goals; UML
Slide

Oct 3

Class Extension

Oct 5

Refactoring

Oct 6

Adventure game II

Oct 7

More refactoring

Oct 10

Nested classes

Oct 12

Generics

Oct 13

Generics

lab 7

Oct 14

Enum types; extended for

Oct 17

NO CLASS

Oct 19

Computer memory and pointers

Oct 20

Pointers

Oct 21

Dynamic allocation

Oct 24

C Strings

Oct 26

Bit operations

proj 5, due nov 7

Oct 27

Bit vectors

Pre-lab reading
lab 8

Oct 28

Stacks and queues

Oct 31

Stacks and queues II

Pre-lab reading

Nov 2

Stacks and queues

lab 9
proj 6, due nov 16

Nov 3

Finishing stacks and queus; binary trees
Slides

Nov 4

Binary trees

Nov 7

Binary trees

proj 5 due

Nov 9

Review

Nov 10

Priority queues

Pre-lab reading
Lab 10

Nov 11

TEST

Nov 14

Intro to Design Patterns; Strategy

Nov 16

Finishing Strategy; State
Slides

Proj 6 due
Proj 7

Nov 17

Strategy

Lab 11

Nov 18

Hashing

Nov 21

Hashing

Lab 12

Oct 23

NO CLASS

Oct 24

NO LAB

Oct 25

NO CLASS

Nov 28

Adaptor and decorator
Slides

Nov 30

Model of Execution
Language description

Dec 1

Adaptor

Lab 13

Dec 2

Pseudo-assembly

Proj 8

Dec 5

Function call and return

Dec 7

Function pointers

Dec 8

COO

Lab 14

Dec 9

Review