Computer Science 245

Programming II: Object-Oriented Design
Fall 2015
Thomas VanDrunen



Meeting time: MWF 11:30 am - 12:35 pm
Meeting place: Science 129
Lab time: 1:15 pm - 3:05 pm Tu
Lab place: Sci 154
Office hours: MTuWThF 9:15-10:15 am; Th 1:30-3:30 pm.
Contact: Sci 163 ; 752-5692; Thomas.VanDrunen@wheaton.edu
http://cs.wheaton.edu/~tvandrun/cs245


Syllabus
Style and documentation requirements
How to use the CS Lab computers remotely (thanks to Dr Gray)
Screencast demo for setting up a Java project in Eclipse
Inventory of practice problems for Programming I and II


Final exam: Thursday, Dec 17, 8:00 am


Moon's dayTiw's dayWoden's dayFrigga's day

Aug 26

NO CLASS

Aug 25

NO LAB

Aug 26

Introduction to C
Slides

Aug 28

C functions, arrays, and strings

Aug 31

Compiling, linking, and the C preprocessor

Sept 1

Introduction to the lab; trying out C

Pre-lab reading
Lab 1

Sept 2

Loop invariants

Sept 4

First try at analysis

Sept 7

NO CLASS

Sept 8

Counting comparisons

Pre-lab reading
Lab 2

Sept 9

More on analysis; review of recursion
Slides

Project 1,due Sept 23

Sept 11

Recursive analysis

Sept 14

Structs

Sept 15

Structs

Lab 3

Sept 16

Review OOP of concepts

Sept 18

More review of OOP concepts

Project 2, due Oct 7.

Sept 21

Review of linked lists

Sept 22

Revision control

Pre-lab reading
Lab 4

Sept 23

Finishing up lab...

Project 1 due
Project 3, due Oct 7.

Sept 25

Javadoc and documentation; Java GUI components

Sept 28

Introduction to abstract data types; review of Java collections

Sept 29

Adventure game

Lab 5

Sept 31

Design goals; UML; class extension

Oct 2

Class extension

Oct 5

More on class extension

Oct 6

Adventure game II

Project 4 assigned.

Oct 7

Refactoring

Oct 9

Review

Projects 2 and 3 due.

Oct 12

TEST

Oct 13

Pointers

Oct 14

More on pointers; dynamic allocation

Oct 16

Dynamic allocation

Oct 19

NO CLASS

Oct 20

NO LAB

Oct 21

Dynamic allocation

Pre-lab reading
Lab 7

Oct 23

Dynamic allocation

Oct 26

Bit operations

Project 5, due Nov 9

Oct 27

Finishing touches on the adventure game...

Oct 28

Nested classes

Project 4 due

Oct 30

Generics

Nov 2

Generics

Nov 3

Generics

Pre-lab reading
Lab 8

Nov 4

Enum types

Nov 6

Stacks and queues

Project 6, due Nov 16.

Nov 9

More stacks and queues
Slides

Project 5 due.

Nov 10

Stacks and queues

Pre-lab reading
Lab 9

Nov 11

Hashing

Nov 13

Hashing

Nov 16

Review

Project 6 due.

Nov 17

Hashing

Pre-lab reading
Lab 11

Nov 18

TEST

Nov 20

Introduction to design patterns; Strategy

Nov 23

State
Slides

Project 8, due 12/10

Nov 24

Strategy

Lab 12

Nov 25

NO CLASS

Nov 27

NO CLASS

Nov 30

Adapter and Decorator
Slides

Dec 1

Adapter

Lab 13

Dec 2

Model of execution

Dec 4

Pseudo-assembly

Project 9, due 12/11

Dec 7

Function call and return

Dec 8

Function pointers

Dec 9

C-OO

Pre-lab reading
Project 8 due.

Dec 11

Review

Project 9 due.