JMU

Schedule

Announcements
Part 1: Review and Preparation to Move Ahead
Review

Part 2: Exceptions and I/O
Exceptions
File I/O
Part 3: Fundamentals of Object Oriented Programming
Object Oriented Paradigm
Object Oriented Design
Inheritance/Specialization
Polymorphism


Part 4: Advanced Object Oriented Features
Abstract Classes
Interfaces

Part 5: Advanced Programming Techniques
Recursion
Testing
Part 6: Introduction to Abstract Data Types
Multidimensional arrays
Collections
Data Structures

Part 7: Optional Topics and Wrap up
Week General Topics for the week Specific Labs
Room 248
Specific Lectures
Room ISAT/CS 350
Homework
or Assignment Due
Date indicates due date.
Jan 11
Wk 1
Jump start our brains. Review and labs to get you back into programming. M-printf
W-Experience with Objects
T-Basics review
 Th-Object review
Jan 12 - Gaddis, 2, 3, 4.1-4.7, 4.9
Jan 14 - Gaddis, 5, 6.1-6.5

Part 2: Exceptions and I/O

Jan 18
Wk 2
Exceptions and I/O M-No lab, MLK day
W-Exceptions
T - Exceptions, ppt
Intro to PA1
Practice Exercise (finish for homework)

Th - I/O
Jan 19 - Gaddis, 12.1
Jan 21 - Gaddis, 4.10 (Supplemental material - Java Tutorial)

Part 3: Fundamentals of Object Oriented Programming

Jan 25
Wk 3
Software design and OOP M - FileI
W - FileIO
 
T - Finish I/O (same as Th...combined notes)
Introduction to Design


Th - Practice Design
LabReview
Gaddis Chapter 6, 9 review

Feb 1
Wk 4
Specialization  M-Using a Debugger
W-Enumerated Types
T- Class design
Enumerated Types
Creature.java
CreatureDemo.java
Th - Specialization
Feb 3 - PA1 due
Feb 4 - submit report due in class

T - Gaddis Chapter 9.9
 Th - Gaddis Chapter 11.1 - 11.6
Feb 8
Wk 5
Polymorphism  M-Specialization
W-Experimenting with visibility
 T-Visibility Revisited
Th - Polymorphism
Th - Gaddis Chapter 11.7
Feb 15
Wk 6
Exam 1  M-Polymorphism T - No class Assessment Day
Th - Exam 1 
Feb 15, PA2 due
    Part 4: Advanced Object Oriented Features
Feb 22
Wk 7
Abstract Classes and Interfaces  M-Return Exam 1
W-Abstract Classes
T-Abstract Classes
Th - Interfaces 
 T-Gaddis Chapter 11.8
Th - Gaddis Chapter 11.9
Mar 1
Wk 8
Polymorphism with interfaces  M - Interfaces
W - Polymorphism w/ Interfaces
T-Polymorphism
Th-Designing with Abstract classes/interfaces

Mar 8 Spring Break - No classes

Part 5: Advanced Programming Techniques

Mar 15
Wk 9
Recursive Algorithms  M-Experience Recursion
W-Build recursive methods
T-PA3 design - Recursive algorithms
Th-More fun with recursion 
T-Gaddis Chapter 15.1-15.3
Th-Gaddis 15.3-15.6
Mar 22
Wk 10
Testing  M-Recursion Lab
W-Continue Generics lab
T-LAB-Generics and Javadoc - NO CLASS 3/23
Th-Testing 
Java Tutorial - Generics
Th-Gaddis Chapter 12.2, 6.6, Jar Files
Packages
Mar 29
Wk 11
Midterm 2
 M-Lab Testing lab
W-Exam 2 Review
T-Exception classes
Th-Exam 2 
 W-PA5 due in submit (0 penalty points)
Th-penalty points begin

Part 6: Introduction to Abstract Data Types

Apr 5
Wk 12
Multidimensional Arrays M-Testing lab
W-Multidimensional Arrays 
T-Multidimensional Arrays
Th - More multidimensional arrays 
T-Gaddis Chapter 8.9-8.12
Th-Gaddis Chapter 8.13, 8.14 
Apr 12
Wk 13
Using Collections  M-Multi-Dimensional
Array Practice

W-Play with Collections
T-Collections 1
Th-More collections, begin ADT
 Friday-PA6 due in submit 5pm
April 19
Wk 14
Data Structures  M-Experimenting with implementing ADT
W-Sack class
T-Data Structures
Th -More on Data Structures  
April 26
Wk 15
Wrap up  M-Free Day (work on PA7)
W- coding part of the final exam
T-More fun with linked lists
Th-Review
Monday  Thursday - PA7 due in submit 11pm.
NO LATE SUBMISSIONS WILL BE ACCEPTED 
FINAL EXAM
May 4
6 - 8pm
Tuesday - MAY 4, 2009 6pm - 8pm in ISAT/CS 159

Programming Assignments

Programming Assignments
 PA1 - args checker
PA2 - Basic classes
 PA3 - Enumerated types, inheritance
 PA4 - designing classes
 PA5 - recursion
 PA6 - multidimensional arrays
PA7 - Data structures