CS111 Summer 2008
This is a tentative schedule, subject to adjustment as the term evolves.
Check http://www.cs.bu.edu/courses/cs111/ for updates, assignments, labs, etc.

Date 9:30am-10:40am 10:50am-12:00pm Readings Assignment
MON 6/30 Course Administration
Introduction:
  • Computer Concepts, Binary Representation
  • Computer Hardware & Software
  • Introducing Java
  • Lab 0: Set up CS accounts 1.1
    TUE 7/1 Introduction to Java Programming
  • Eclipse IDE & First Java program
  • Java language elements
  • Programming Errors
    Procedural Decomposition
    Simple Input and Output
    1.2, 1.3, 1.4 Lab 1: Intro to Eclipse
    HW 1: Formatted Output (due 7/3)
    THU 7/3 Data Types and Variables
    Arithmetic 2.1, 2.2, 2.3, 2.4 Lab 2: Variables and arithmetic
    HW 2: Computing with Numbers (due 7/7)
    Date 9:30am-10:40am 10:50am-12:00pm Readings Assignment
    MON 7/7 QUIZ 1
    Recap/q&a
    Repetition with definite loop Lab 3: Definite Loop
    HW 3: Definite Loop (due 7/10)
    TUE 7/8 Invoking methods
    Method parameters
    Using objects from the Java API 3.1, 3.2, 3.3, 3.4
    THU 7/10 Overview of Vector Graphics
    Using the Java Graphics API
    Using the Java Graphics API (continued) 3G.1, 3G.2 Lab 4: Using classes from the API (Graphics)
    HW 4: Using the Graphics API (due 7/14)
    Date 9:30am-10:40am 10:50am-12:00pm Readings Assignment
    MON 7/14 QUIZ 2
    Expressions and Decision Making
    Decision Making: some special cases 4.1, 4.2, 4.3 Lab 5: Expressions and control statements
    HW 5: Decision Making (due 7/17)
    TUE 7/15 Repetition with indefinite loop Repetition with indefinite loop (continued) 5.1, 5.2, 5.3, 5.4
    THU 7/17 Text Processing File Processing 4.4
    6.1, 6.2, 6.3, 6.4
    Lab 6: Repetition
    HW 6: Repetition (due 7/21)
    Date 9:30am-10:40am 10:50am-12:00pm Readings Assignment
    MON 7/21 QUIZ 3
    Arrays:
  • constrution, traversal
  • Arrays:
  • printing, searching
  • 7.1, 7.2, 7.3 Lab 7: Arrays
    HW 7: Arrays (due 7/24)
    TUE 7/22 Arrays:
    - Shallow copy vs. Deep copy
    - Arrays of objects
    Classes: introduction
  • object state and behavior
  • ch 7 (reprise)
    8.1, 8.2, 8.3
    THU 7/24 Classes:
  • Constructors and Methods
  • Classes:
  • Methods
  • 8.4, 8.5, 8.6. 8.7 Lab 8: User Defined Classes
    HW 8: User Defined Class (due 7/28)
    Date 9:30am-10:40am 10:50am-12:00pm Readings Assignment
    MON 7/28 QUIZ 4
    Inheritance and Polymorphism:
  • Hierarchies
  • Inheritance and Polymorphism:
  • Class extension
  • 9.1, 9.2, 9.3 Lab 9: Inheritance & Polymorphism
    HW 9: Inheritance/Polymorphism (due 7/31)
    TUE 7/29 Inheritance and Polymorphism:
  • Abstract classes and Interfaces
  • Recursion (overview and discussion)
    9.4, 9.5
    12.1, 12.2
    OPTIONAL HW11: Recursion (due 8/2)
    THU 7/31 Multi-Dimensional Arrays
  • construction, traversal, printing
  • Computer Games
    Discuss Final Game Project
    7.4 Lab 10: Multi-Dimensional Arrays
    HW 10: Multi-Dimensional Arrays (due 8/4)
    Game Project (due 8/7)
    Date 9:30am-10:40am 10:50am-12:00pm Readings Assignment
    MON 8/4 QUIZ 5
    Algorithm Analysis: Sorting
    Algorithm Analysis: Searching 13.1, 13.2 Lab: Help with Game Project
    TUE 8/5 Review/Q&A for Exam Help with Game Project
    THU 8/7 Final Exam in class (2 hours) Lab Exam in Lab period