CPSC 225 Intermediate Programming Spring 2016

CPSC 225 Syllabus

Reading is to be done for the class period where it is listed.

Dates for things in light gray are tentative and may shift slightly.

 Assignments

Week 1: 1/19-1/22

Topics: course introduction, review of CPSC 124, basic object-oriented design

   

Mon      

Tue   lab 1
Eclipse

due Fri 1/22

also complete the syllabus "quiz" on Canvas
 

Wed Examples: Reference:
  • Eck chapters 2-5
programming assignment 0
Benford's Law

due Wed 1/27

Fri Reading:
  • Eck section 1.5
  • Eck sections 5.4, 5.5.3
Slides and Examples:
 

Week 2: 1/25-1/29

Topics: correctness and robustness, fundamental data structures for collections: arrays

 

Mon Reading:
  • Eck sections 8.1-8.2
Slides and Examples:
 

Tue   lab 2
Correctness and Robustness

due Fri 1/29

(solutions)

Wed Reading:
  • Eck sections 8.3-8.4
Slides and Examples:
 

Fri Reading:
  • Eck section 3.8.4
  • Eck sections 7.2.1-7.2.2
Slides and Examples:
  programming assignment 1
Evolution

due Fri 2/12

muddiest points due Mon 2/1

(grading and common problems)

Week 3: 2/1-2/5

Topics: linked lists


Mon Reading:
  • Eck section 9.2
Slides and Examples:
 

Tue   lab 3
Linked Lists

due Fri 2/5

Wed Slides and Examples:

Fri Slides and Examples:  

Week 4: 2/8-2/12

Topics: testing; ADTs

 

Mon Reading:
  • Eck section 4.1
Slides and Examples:
 

Tue   lab 4
Testing

due Fri 2/12

(list of test cases)

Wed Examples:

Fri Reading:
  • Eck section 9.3
Slides and Examples:
  programming assignment 2
Solitaire Encryption

due Fri 2/26

muddiest points due Mon 2/15

(grading and common problems)

Week 5: 2/15-2/19

Topics: Java Collections, implementing ADTs

 

Mon Reading: (can be done after class)
  • Eck sections 10.1.4, 10.2.1, 10.2.5
Slides and Examples:
 

Tue   lab 5
Java Collections

due Fri 2/19

Wed Slides and Examples:

Fri Slides and Examples:  

Week 6: 2/22-2/26

Topics: priority queues; searching, sorting, and shuffling

 

Mon Slides and Examples:  

Tue   lab 6
Java Collections II

due Fri 2/26

Wed Reading:
  • Eck section 7.4
Slides and Examples:

Fri Slides and Examples:    

Week 7: 2/29-3/4

Topics: analysis of algorithms; recursion

   

Mon Reading:
  • Eck section 8.5
Slides:
   

Tue   lab 7
Algorithm Detective

due Fri 3/4

(partial solutions and comments)
 

Wed
exam 1

Fri Reading:
  • Eck section 9.1
Slides and Examples:
   

Week 8: 3/7-3/11

Topics: recursion

   

Mon Slides and Examples:   programming assignment 3
Recursive Backtracking

due Wed 3/30

muddiest points due Fri 3/11

(common problems and other comments)

Tue   lab 8
Recursion

due Fri 3/11

Wed Slides and Examples:

Fri meet in the lab to work on the programming assignment  

Spring Break: 3/12-3/20


Week 9: 3/21-3/25

Topics: binary trees

 

Mon Reading:
  • Eck sections 9.4.1, 9.4.3
Slides and Examples:
 

Tue   lab 9
Binary Trees

due Fri 3/25

Wed Slides and Examples:

Fri Slides and Examples:  

Week 10: 3/28-4/1

Topics: binary search trees, lookup

 

Mon Reading:
  • Eck section 9.4.2
Slides and Examples:
 

Tue   lab 10
20 Questions

due Fri 4/1 Mon 4/4

Wed Reading:
  • Eck section 10.3
Slides and Examples:
programming assignment 4
File Compression

due Wed 4/13

muddiest points due Fri 4/1

Fri meet in the lab to work on lab 10

Slides:


Week 11: 4/4-4/8

Topics: designing and implementing ADTs


Mon Slides:  

Tue   lab 11
OOAD

due Fri 4/8

Wed Examples:

Fri Examples:  

Week 12: 4/11-4/15

Topics: files and streams; inheritance and interfaces

 

Mon Reading:
  • Eck sections 11.1, 11.2.1-11.2.2
Slides and Examples:
 

Tue   lab 12
Streams

due Fri 4/15

Wed Reading:
  • Eck sections 5.5-5.7
Slides and Examples:
 

Fri Slides and Examples:   final project
Adventure

due Sun 5/8

muddiest points due Mon 4/18
design due Fri 4/22

Week 13: 4/18-4/22

Topics: GUI programming

 

Mon Reading:
  • Eck sections 6.1-6.3, 6.5-6.6
Slides and Examples:
 

Tue   lab 13
GUI Calculator

due Fri 4/22

Wed
exam 2

Fri meet in the lab today!

Reading:
  • Eck sections 6.5, 6.7, 13.3
Slides and Examples:
 

Week 14: 4/25-4/29

Topics: GUI programming

 

Mon Reading:
  • Eck section 13.4
Slides and Examples:
 

Tue   lab 14
Shape Painter

due Fri 4/29

Wed meet in the lab today!

Reading:
  • Eck section 13.1
Materials:

Fri meet in the lab today!

Reading:
  • Eck section 13.2
Materials:
 

Week 15: 5/2-5/3

Topics: wrapup

 

Mon Slides:  

Tue    

Reading Period: 5/4-5/6

 

Wed office hours 12-3pm  

Thu office hours 12-3pm  

Fri office hours 10:30-12 and 1:30-3pm  

Exams: 5/7-5/10

 

Sat  

Sun
final exam (final project due)
Sun 5/8 7-10pm
end-of-semester deadline
no work accepted after 5/8 10pm

Mon    

Tue    

Valid HTML 4.01!