Date |
Preparation |
Activity / Lab |
Homework |
Jan 08 Jan 10 Jan 12 |
Chapter 1: Computer programming
Video 1: Tour of JGrasp (~10 min)
|
Act01
Introduction
Lab01
Building a Java program
Lab02
Style guide and Checkstyle
|
PA1: Input and Output
(quiz due 1/15 at 11:00pm)
(code due 1/19 at 11:00pm)
|
Jan 15 Jan 17 Jan 19 |
Chapter 2: Variables and operators
Video 2: Using the Scanner class
|
Lab03
Unix tutorial for beginners
Act02
Arithmetic
Lab04
Concatenation and types
|
Jan 22 Jan 24 Jan 26 |
Chapter 3: Input and output
Video 3: Command line review
|
Act03
Data Types
Lab05
Testing via command line
Lab06
Formatting output in Java
|
PA2: Methods and Testing
(quiz due 1/26 at 11:00pm)
(code due 2/02 at 11:00pm)
|
Jan 29 Jan 31 Feb 02 |
Chapter 4: Methods and testing
Video 4: Introduction to methods
|
Act04
Methods
Lab07
Drawing shapes and houses
Lab08
Program testing with JUnit
|
Feb 05 Feb 07 Feb 09 |
Review Chapters 1–4
See also
1.1 and 1.2 of Princeton
|
Exam logistics and preparation
Written Exam #1 (classroom)
Coding Exam #1 (in the lab)
|
|
Feb 12 Feb 14 Feb 16 |
Chapter 5: Conditionals and logic
Video 5: Introduction to decisions
|
Act05
Boolean Logic
Lab09
CodingBat practice problems
Lab10
Web-CAT submission system
|
PA3: Decisions and Logic
(quiz due 2/16 at 11:00pm)
(code due 2/23 at 11:00pm)
|
Feb 19 Feb 21 Feb 23 |
Chapter 6: Loops and strings
Video 6: Tracing code by hand
|
Act06
Loops
Lab11
Validation using do-while
Lab12
Practice with nested loops
|
Feb 26 Feb 28 Mar 02 |
Chapter 7: Arrays and references
Video 7: Introduction to arrays
|
Act07
Arrays
Lab13
Processing array elements
Lab14
Computing basic statistics
|
PA4: Loops and Arrays
(tests due 3/02 at 11:00pm)
(code due 3/16 at 11:00pm)
|
Mar 12 Mar 14 Mar 16 |
Chapter 8: Recursive methods
Video 8: How recursion works
|
Act08
Recursion
Lab15
Recursive 2D graphics
Lab16
Debugging and tracing
|
Mar 19 Mar 21 Mar 23 |
Review Chapters 5–8
Lesson: Language Basics
|
Exam logistics and preparation
Written Exam #2 (classroom)
Coding Exam #2 (in the lab)
|
|
Mar 26 Mar 28 Mar 30 |
Chapter 9: Immutable objects
Video 9: Java substring v2
|
Act09
Object-Oriented
Lab17
Getting started with Eclipse
Lab18
Final round of CodingBat
|
PA5: Numbers and Strings
(tests due 3/30 at 11:00pm)
(code due 4/06 at 11:00pm)
Lesson: Numbers and Strings
|
Apr 02 Apr 04 Apr 06 |
Chapter 10: Mutable objects
Video 10: Intro to objects in Java
|
Act10
Classes and UML
Lab19
Passing and returning objects
Lab20
Game design with Greenfoot
|
Apr 09 Apr 11 Apr 13 |
Chapter 11: Designing classes
Video 11: Memory Diagrams
|
Act11
Designing Classes
Lab21
Simulation of mutable objects
Lab22
Class variables vs attributes
|
PA6: Classes and Objects
(Part A due 4/13 at 11:00pm)
(Part B due 4/20 at 11:00pm)
Lesson: Classes and Objects
|
Apr 16 Apr 18 Apr 20 |
Chapter 12: Arrays of objects
Video 12: Summary of CS 149
|
Act12
Arrays of Objects
Lab23
Greenfoot media computation
Lab24
Robots counting rooms
|
Apr 23 Apr 25 Apr 27 |
Review Chapters 9–12
Finish PA5/PA6 Tutorials
|
Exam logistics and preparation
Practice for the final exam
|
2018 Spring Exam Schedule
Sec 3: Wed. 5/02 8:00–10:00
|