Computer Science 245

Programming II: Object-Oriented Design
Spring 2012
Thomas VanDrunen



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

Office hours: MF 2:00-4:00 pm; W 2:00-3:45 pm; Th 9:30-10:45 am.
Contact: Sci 163 ; 752-5692; Thomas.VanDrunen@wheaton.edu
http://csnew.wheaton.edu/~tvandrun/cs245


Syllabus
Style and documentation requirements


Final exam: Wednesday, May 2, 8:00 AM


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

Jan 9

Introduction to C

Jan 11

C functions, compiling, linking

Jan 12

Sorting

Lab 1

Jan 13

Loop invariants

Jan 16

NO CLASS

Jan 18

First try at analysis

Jan 19

Instrumentation

Pre-lab reading
Lab 2

Jan 20

Recursive sorting and analysis

Project 1. Due 1/30

Jan 23

Managing a C project

Jan 25

Structs

Jan 26

Structs

Lab 3

Jan 27

Review OOP

Jan 30

Review linked lists

Project 2. Due 2/13

Feb 1

Software life cycle; Javadoc; Eclipse; Mercurial

Feb 2

Revision control systems

Pre-lab reading
Lab 4

Feb 3

Abstract data types; review Java collections

Feb 6

Design goals; UML
Slide

Feb 8

Class extension

Feb 9

Adventure game

Lab 5

Feb 10

Refactoring

Feb 13

More refactoring

Feb 15

Review

Feb 16

Adventure game

Project 3 assigned

Feb 17

TEST

Feb 20

NO CLASS

Feb 22

Nested classes

Feb 23

Generics

Feb 24

Generics

Pre-lab reading
Lab 6

Feb 27

Computer memory

Feb 29

Bit operations

Mar 1

Bit vectors

Pre-lab reading
Lab 7

Mar 2

Pointers

Mar 5

NO CLASS

Mar 7

NO CLASS

Mar 8

NO CLASS

Mar 9

NO CLASS

Mar 12

Dynamic allocation

Project 4

Mar 14

Stacks and queues

Mar 15

Stacks and queues

Pre-lab reading
Lab 8

Mar 16

More stacks and queues
Slides

Project 5

Mar 19

Binary trees

Mar 21

More binary trees

Mar 22

Priority queues

Lab 9
Pre-lab reading

Mar 23

Finishing binary trees

Mar 26

Review

Mar 28

TEST

Mar 29

Hashing

Mar 30

Hashing

Lab 10

Apr 2

Concurrency concepts

Project 6, due 4/18

Apr 4

Concurrency in Java

Apr 5

Concurrency

Lab 11

Apr 6

NO CLASS

Apr 9

GUIs

Apr 11

Introduction to design patterns; Strategy

Apr 12

Strategy

Lab 12

Apr 13

State
Slides

Project 7, due 4/25

Apr 16

Adaptor and Decorator
Slides

Apr 18

Model of execution
Language description

Apr 19

Adaptor

Lab 13

Apr 20

Pseudo-assembly

Project 8

Apr 23

Function call and return

Apr 25

Function pointers

Apr 26

C-OO

Pre-lab reading
Lab 14

Apr 27

Review
Slides