JMU

Schedule - Spring 2011

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 10
Wk 1
Jump start our brains. Review and labs to get you back into programming. M-BASH Shell
W-Experience with Objects
T-Basics review
 Th-Object review
T - Gaddis, 2, 3, 4.1-4.7, 4.9
  Th- Gaddis, 5, 6.1-6.5,9

Part 2: Exceptions and I/O

Jan 17
Wk 2
Exceptions and I/O M-No lab, MLK day
W-Experimenting with exceptions

T-Methods, ppt
Exceptions, activity
Exceptions, notes
Th-I/O Basics
Clarity quiz
T - Gaddis, 12.1
  Th- Gaddis, 4.10 (Supplemental material in Java Tutorial)

Part 3: Fundamentals of Object Oriented Programming

Jan 24
Wk 3
Software design and OOP M-experimenting_io
W-using-a-debugger
T-Software Design and OOP
Th-SNOW DAY!
Gaddis Chapter 6, 9 review

Jan 31
Wk 4
Enumerated Types and Design
M-ObjectsLab (worksheet)
W-Questions about references/
T-Introduction to Design
Money.java
Th-Enumerated Types
Exercise

T - Gaddis Chapter 9.9

Feb 7
Wk 5
Specialization M-Experimenting with enumerated types
W-Experimenting with Spcialization
T-PA1 review
Specialization
Th-Accessibility
T-Gaddis Chap 11.1,2,3
Th-Gaddis Chap 11.4,5,6
Feb 14
Wk 6
Exam 1 M-Experimenting with Accessibilty
PA2 due-in submit

W-Introducing PA3
Time to work on PA2 or PA3
PA2-hardcopy due
T - No class Assessment Day
Th - Exam 1 

    Part 4: Advanced Object Oriented Features
Feb 21
Wk 7
Abstract Classes and Interfaces  M-Fun with javadocs
W-Experimenting with Polymophism
PA3-stubs due in Blackboard/PA/PA3Stubs assignment.

T-Return exam 1, review PA2
Polymorphism
Th - Abstract Classes
-continue with Polymorphism ppt.

T-Chap 11.7
Th-Chap 11.8
Feb 28
Wk 8
Polymorphism with interfaces M-Experimenting with Abstract Classes
PA3 - due in Submit

W-Experimenting with Interfaces
T - Interfaces
PA3-Hardcopy due

Th-Polymorphism wiht Interfaces
T-Chap 11.9
Mar 7 Spring Break - No classes

Part 5: Advanced Programming Techniques

Mar 14
Wk 9
Recursive Algorithms M-Polymorphism with Interfaces
W-Tracing Recursive algorithms
T-Tracing Recursive algorithms
Th-Creating Recursive Algorithms.
Other notes about recursion
T-Gaddis Chapter 15.1-15.3
Th-Gaddis 15.3-15.6
Mar 21
Wk 10
Testing M-Play with Recursion
PA4 due in Submit (M)
W-Experimenting with testing
T-Testing
PA 4 - Hardcopy due (T)
Th - Exception Classes/Packages

Th-Gaddis Chapter 12.2, 6.6,
Jar Files
Packages
Mar 28
Wk 11
Midterm 2
M-Experimenting with testing 2
PA5 due in submit (M)

W-Experimenting with Exception Files/Packages
T-PA4 Designs, exam practice
PA5 - Hardcopy due (T)
Th - Exam 2
 

Part 6: Introduction to Abstract Data Types

Apr 4
Wk 12
Multidimensional Arrays M-Exploring Jar Files
W-Experimenting with MD arrays
T-Introduction to multidimensional arrays
Th - Followup MD arrays, excersize

T-Gaddis Chapter 8.9-8.12
Th-Gaddis Chapter 8.13, 8.14 
Apr 11
Wk 13
Using Collections  M-Practice with 2D arrays
W-Experimenting with Collections
T-Intro to collections

Th-Collections 2

F-PA6 due in submit
Java Tutorial
April 18
Wk 14
GUI M-Collections 2
W-Experimenting with Stacks and Queues
T-Stacks and Queues
Th-Intro to GUI applications

Chapter 7, 13
April 25
Wk 15
Wrap up M-Experimenting with GUI
M-PA7 due in submit. NO LATE SUBMISSION

W- coding part of the final exam

T-Intro to 2D graphics
Th-Review for written exam

FINAL EXAM
May 4
6 - 8pm
Final Exam Written - Wednesday - MAY 4, 2011 6pm - 8pm in ISAT/CS 159

Programming Assignments

Programming AssignmentsDue Date
PA1 - Review
Jan 31 at 11pm
PA2 - Implementing Simple Classes
Feb 14 at 11pm
PA3 - Designing and Implementing Classes
Feb 28 at 11pm
PA4 - Abstract Classes and Interfaces
Mar 21 at 11pm
PA5 - Recursion
Mar 28 at 11pm
PA6-Multidimensional Arrays
Apr 15 at 5pm
PA7 - Data Structures
Apr 26 (Tuesday) 1am
no late submission