CS111 Summer Session I, 2006 (revised 6/15/06)
This is a tentative schedule, subject to adjustment as the term evolves.
Week Class Topics Readings Labs/Practice Assignment Due
1 17-May Introduction: Course Administration
- Data Representation
- Computer Hardware & Software
1.1, 1.3 Lab 0: Set up CS accounts  
  18-May Introduction:
- Computer Languages
- Eclipse IDE & First Java program
1.4,1.5 Lab 1: Intro to Eclipse HW 1: Formatted Output
(due 5/22)
Week Class Topics Readings Labs/Practice Assignment
2 22-May Variables and Standard IO
- primitive types, String
Arithmetic and Math
2.1, 2.2, 2.3,
2.4, 2.5
Lab 2: Common error messages HW 2: Variables & Input/Output
(due 5/25)
HW 1
  23-May Using classes: introduction
- classes and objects, Java API
- calling methods
- Standard input (using Scanner)
3.1, 3.2   QUIZ 1
  24-May Using classes: calling methods
(Introduction to graphics)
- Using a graphics library to draw shapes
- colors
4.1-4.5 Lab 3: Using classes from the API (Graphics, ...) HW 3: Using the Graphics API
(due 5/30)
  25-May Using classes: object creation
- reference types, object creation
- constructors
3.2, 3.3, 3.4     HW 2
Week Class Topics Readings Labs/Practice Assignment
3 30-May Using classes
- accessor and mutators
- static methods and data members
- more examples of using classes
3.5, 3.6, 3.7, 3.8 Lab 4: Using classes, introduction to debugging QUIZ 2
HW 4: Using existing classes
(due 6/1)
HW 3
  31-May Flow control: selection
- expressions
- if, if/else if
5.1-5.4 Lab 5: Expressions  
  1-Jun Flow control: selection
- comparing floating point numbers
- comparing objects using .equals()
- switch statement
5.5-5.9, 5.11 HW5: Control statements (due 6/5) HW 4
Week Class Topics Readings Labs/Practice Assignment
4 5-Jun Flow control: repetition
- while loops
6.1-6.8 Lab 6: Repetition QUIZ 3
HW6: Repetition (due 6/8)
HW 5
  6-Jun Flow control: repetition
- do-while loops
- for loops
6.9-6.12    
  7-Jun User defined classes
- variables & accessors
- methods, constructors
ch 7 Lab 7a: User defined classes HW 7: User defined classes (due 6/13)
  8-Jun User defined classes
- methods, parameter passing
- keyword this
ch 7     HW 6
Week Class Topics Readings Labs/Practice Assignment
5 12-Jun User defined classes
- toString, equals
- static members
ch 7 Lab 7b: User defined classes QUIZ 4
  13-Jun Arrays: introduction
- declaration
- access
8.1-8.5   HW8: Arrays (due 6/16)
  14-Jun Arrays of object references
- copying, searching
8.1-8.5 Lab 8: Single Dimension Arrays  
  15-Jun Arrays: 1-d
- review of lab 8
Arrays: multi-dimensional
- intro, delcaring, referencing, etc.
9.1-9.2   HW9: Multidimensional Arrays
(due 6/20)
Week Class Topics Readings Labs/Practice Assignment
6 19-Jun Arrays: multi-dimensional
- iterating, use in applications
- 2-d arrays of objects
9.1-9.5 Lab 9:
Multi-Dimension Arrays
QUIZ 5
  20-Jun Inheritance
- class higherachies
10.1-10.5   HW 10: Inheritance and Polymorphism
 (due 6/22)
  21-Jun Objected oriented features:
- polymorphism
- abstract classes
- interfaces
10.6, 10.7 10.8 Lab 10: OO Features  
  22-Jun Computer Games
Concepts for HW12
    HW 12: Game Project (due 6/27)
Week Class Topics Readings Labs/Practice Assignment
7 26-Jun Exceptions and IO
- try-catch
- java file IO: basic reading/writing
- java IO: streams, structured files
- throwing Exceptions, user defined Exceptions
11.1-1.7 Lab: lab 11 or hwith HW 12 (TBD) QUIZ 6
  27-Jun Review for Exam &
Help with HW12
     
  28-Jun Final Exam in class (2 hours)   Lab: Practical Exam HW11: Exceptions and File IO
(due 6/22)