Computer Science 245

Programming II: Object-Oriented Design
Spring 2026
Thomas VanDrunen



Meeting time: MWF 12:55-2:05 pm.
Meeting place: MeySci 184

Office hours: Drop-in 3:30-4:30 MWF; also schedule through Calendly
Contact: Meyer 163 ; 752-5692; Thomas.VanDrunen@wheaton.edu
http://cs.wheaton.edu/~tvandrun/cs245


Syllabus
Inventory of practice problems for Programming I and II


Final exam: Thurs, May 7, 10:30 am


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

Jan 12

Introduction to C
Slides

Jan 14

C functions and build procedures
Slides

Jan 15

Trying out C

Jan 16

Loop invariants
Slides

Jan 19

NO CLASS

Jan 21

First try at analysis

Project 1 (QS) assigned

Jan 22

Counting comparisons

Jan 23

More on analysis; review of recursion

Jan 26

Recursive sorting and analysis

Jan 28

Structs

Jan 29

Structs

Jan 30

Review of OOP concepts

Project 2 (Calc) assigned

Feb 2

More review of OOP concepts

Project 1 due

Feb 4

Version control systems

Feb 5

Version control systems

Feb 6

Review of linked lists

Feb 9

Javadoc and documentation; review of Java GUI components

Feb 11

Introduction to abstract data types; review of Java Collections

Feb 12

Adventure game

Feb 13

More ADTs and collections

Project 3 (HMLLM) assigned

Feb 16

NO CLASS

Feb 18

Review

Project 2 due

Feb 19

Adventure game II

Project 4 (Adv Game) assgined

Feb 20

TEST

Feb 23

OO design goals; UML

Feb 25

Class extension

Feb 26

Adventure game III

Feb 27

More on class extension

Mar 2

Refactoring

Mar 4

More refactoring

Mar 5

Adventure game IV

Mar 6

Computer memory and pointers

Project 4 due

Mar 9

NO CLASS

Mar 11

NO CLASS

Mar 12

NO LAB

Mar 13

NO CLASS

Mar 16

Dynamic allocation

Project 5 (BitVec) assigned

Mar 18

Dynamic allocation

Mar 19

Dynamic allocation

Mar 20

Bit operations

Mar 23

Stacks and queues

Project 6 (RPN Calc) assigned

Mar 25

Stacks and queues

Project 5 due

Mar 26

Stacks and queues

Mar 27

Nested classes

Project 5 due

Mar 30

Generics

Apr 1

More generics

Aor 2

Generics

Apr 3

NO CLASS

Apr 6

Hashing

Apr 8

Hashing

Project 6

Apr 9

Review

Apr 10

TEST

Apr 13

Intro to design patterns; Strategy

Project 7 (No-ifs Calc) assigned

Apr 15

State

Apr 16

Strategy

Apr 17

Adapter and Decorator

Apr 20

Processors and architecture

Project 8 (PsAssem) assigned

Apr 22

Assembly

Project 7 due

Apr 23

Adapter

Apr 24

Function call and return

Apr 27

More function call and return

Apr 29

Function pointers

Apr 30

C-OO

May 1

Review

Project 8