Below is the current calendar for the CSE142 class. Please keep in mind that we are constantly updating this. It should accurately describe the past, but it won't always accurately predict the future. Although Riley doesn't often use lecture slides, there are links to slides that have been created by our textbook's coauthor, Marty Stepp. These might prove useful for students who either miss lecture or want an extra opportunity to review the material.

Monday Wednesday Friday
3/28
administrative details
simple programs with println

Read: 1.1-1.3
Lecture: panopto video
Slides: pdf, ppt
Program: Hello.java
3/30
static methods


Read: 1.4-1.5
Lecture: panopto video
Slides: pdf, ppt
Video: complex figure
Program: BakeCookies.java
Program: Figure1.java
Program: Figure2.java
Program: Figure3.java
4/1
primitive types, expressions,
variables, assignment

Read: 2.1-2.2
Lecture: panopto video
Slides: pdf, ppt
Video: expressions
Video: variables/assignment
Program: Expressions.java
Program: Variables.java
Program: ReceiptBadVersion.java
Program: ReceiptGoodVersion.java
4/4
print vs println
for loops

Read: 2.3
Lecture: panopto video
Slides: pdf, ppt
Video: variables/assignment
Video: for loop
Video: nested loops
Program: BakeCookiesLoops.java
Program: ForLoops.java
4/6
nested for loops
class constants

Read: 2.4-2.5
Lecture: panopto video
Slides: pdf, ppt
Video: complex figure
Program: Mirror.java
Program: Mirror2.java
4/8
parameters


Read: 3.1
Lecture: panopto video
Slides: pdf, ppt
Video: parameter mystery
Program: Stars1.java
Program: Stars2.java
Program: SayHello.java
Program: ParameterMystery.java
4/11
graphics

Read: Supplement 3G
Lecture: panopto video
Slides: pdf, ppt
Video: basic drawing
Program: DrawingPanel.java
Program: Car1.java
4/13
more graphics

Read: Supplement 3G
Lecture: panopto video
Video: parameterized drawing
Program: Car2.java
Program: Car3.java
Program: Car4.java
4/15
return, Math class

Read: 3.2
Lecture: panopto video
Slides: pdf, ppt
Video: parameters & return values
Program: Fri.java
Program: Ball1.java
4/18
Scanner/interactive programs
if/else

Read: 3.3-3.4, 4.1-4.2
Lecture: panopto video
Slides: pdf, ppt
Video: Scanner
Program: Gauss.java
Program: Evens.java
4/20
more if/else


Read: 4.4-4.5
Lecture: panopto video
Slides: pdf, ppt
Video: nested if/else
Video: factoring if/else
Program: Grades.java
Program: BMI1.java
Program: BMI2.java
4/22
String and char


Read: 3.3, 4.3
Lecture: panopto video
Slides: pdf, ppt
Video: strings
Program: BadBMI.java
Diagram: BMI Information Flow
Program: LoginSystem.java
Program: CharExamples.java
4/25
while loops
fencepost/sentinel loops

Read: 5.1-5.2
Lecture: panopto video
Slides: pdf, ppt
Video: sentinel loops
Program: Loops.java
4/27
pseudorandom numbers


Read: 5.1
Lecture: panopto video
Slides: pdf, ppt
Video: random numbers
Program: RandomDemo.java
Program: GuessEven.java
Program: Roulette.java
4/29
assertions


Read: 5.5
Lecture: panopto video
Slides: pdf, ppt
Video: assertions
5/2
type boolean
more while loop examples
midterm review

Read: 5.3
Lecture: panopto video
Slides: pdf, ppt
Video: type boolean
Problems: Methods.java
5/4
file input



Read: 6.1-6.2, 5.4
Lecture: panopto video
Slides: pdf, ppt
Video: token-based processing
Program: Weather.java
Data: weather.txt
5/6
optional midterm review
actual midterm at 4:30 pm


5/9
line-based processing

Read: 6.3-6.5
Lecture: panopto video
Slides: pdf, ppt
Video: line-based processing
Video: complex input
Program: Movies.java (imdb.txt)
5/11
arrays

Read: 7.1
Lecture: panopto video
Slides: pdf, ppt
Program: Weather.java
Program: CountDigits.java
Program: Histogram.java (midterm.txt)
5/13
more arrays

Read: 7.2
Lecture: panopto video
Slides: pdf, ppt
Video: array mystery
Video: array traversal
Program: ArraySample1.java
Diagram: reference semantics
5/16
even more arrays
output files

Read: 7.4, 7.6
Lecture: panopto video
Slides: pdf, ppt
Video: array tallying
Program: ArraySample2.java
Program: Section.java (section.txt)
5/18
objects and classes
instance methods

Read: 7.3, 8.1-8.2
Lecture: panopto video
Slides: pdf, ppt
Video: Defining a class
Program: PointClient.java, Point.java
5/20
toString, constructors
encapsulation

Read: 8.3-8.5
Lecture: panopto video
Slides: pdf, ppt
Slides: pdf, ppt
Video: constructors
Video: encapsulation
Program: PointClient2.java, Point.java
5/23
critters

Lecture: panopto video
Resources: ass8.zip
5/25
inheritance

Read: 9.1, 9.3
Lecture: panopto video
Slides: pdf, ppt
Video: inheritance (first example)
Program: Chameleon.java
Handout: inheritance problems
5/27
ArrayList

Read: 10.1
Lecture: panopto video (from fall15, start at 6:55)
Slides: pdf, ppt
Video: ArrayList example
Video: ArrayList example
Program: ArrayListSample.java
5/30
Memorial Day holiday

6/1
more on arrays
review for final

Lecture: panopto video
Video: array shifting
Program: ArraySample3.java
6/3
critter tournament


Lecture: panopto video
Tournament results: Section A
Tournament results: Section B

Final Exam -- Monday, June 6, 12:30pm