CSE 142, Autumn 2021: Calendar

This is a rough sketch of the quarter that is likely to change. We can accurately predict the past, but predicting the future is hard! In particular, all future assignment dates should be considered tentative and subject to change.

Calendar

Click on any date or lesson number to jump to details on that day.

Monday Tuesday Wednesday Thursday Friday
Mon, Sep 27

No Class

Tue, Sep 28

No Class

Thu, Sep 30
Section 1

Intro to Java

Fri, Oct 1
Lesson 1

Simple programs, Static methods

Tue, Oct 5
Lab 1

Java basics

Thu, Oct 7
Section 2

Expressions; for loops

Fri, Oct 8
Lesson 4

Nested for loops; Class constants

Mon, Oct 11
Lesson 5

Expressions; Types

Tue, Oct 12
Labs 2,3

Expressions, Variables, for loops;
Parameters

Thu, Oct 14
Section 3

Parameters; String; Scanner

Mon, Oct 18
Lesson 8

Return values

Tue, Oct 19
Lab 4

Return values; Conditionals; User Input

Thu, Oct 21
Section 4

Return values; Conditionals; User Input

Mon, Oct 25
Lesson 11

String traversals; Fencepost problems; while loops

Thu, Oct 28
Section 5

while loops; pseudorandomness; boolean

Fri, Oct 29
Lesson 13

boolean variables, parameters, and returns

Mon, Nov 1
Lesson 14

Token-based file input (canceled - Brett sick)

Tue, Nov 2
Lab 5.5

Simulated midterm practice

Wed, Nov 3
Lesson 15

Line-based file input; File output (canceled - Brett sick)

Thu, Nov 4
Section 6

Simulated midterm practice; File processing

Tue, Nov 9
Lab 6

File processing

Thu, Nov 11

No class - Veteran's Day

Mon, Nov 15
Lesson 19

Array tallying

Mon, Nov 22
Lesson 22

Encapsulation; Constructors

Tue, Nov 23
Lab 8

Object-oriented programming

Wed, Nov 24
Lesson XX

[OPTIONAL] Two-dimensional arrays (tentative)

Thu, Nov 25

No Class - Thanksgiving

Mon, Nov 29
Lesson 23

Inheritance

Tue, Nov 30
Lab 9

Critters

Thu, Dec 2
Section 8

Object-oriented progamming; Critters

Mon, Dec 6
Lesson 26

ArrayList

Tue, Dec 7
Lab 10

Final review/practice


Date/Lesson
Topic
Class Materials
Suppl. Resources
Assignments
Week 1: Welcome!; Introduction to Java; Printing; Static Methods
Mon, Sep 27

No Class

Tue, Sep 28

No Class

Thu, Sep 30
Section 1

Intro to Java

Fri, Oct 1
Lesson 1

Simple programs, Static methods

Students will be able to...
  • write a simple Java program that produces console output using System.out.println
  • recognize and correct structural redundancy
  • define and call static void methods
Week 2: Expressions, Variables, Types, Loops
Mon, Oct 4
Lesson 2

More static methods

Students will be able to...
  • define static void methods that call other methods
Tue, Oct 5
Lab 1

Java basics

Wed, Oct 6
Lesson 3

Variables; for loops

Students will be able to...
  • define and use int and double variables
  • write and trace the execution of for loops
Thu, Oct 7
Section 2

Expressions; for loops

Fri, Oct 8
Lesson 4

Nested for loops; Class constants

Students will be able to...
  • produce partial-line console output with System.out.print
  • write and trace the execution of nested for loops
  • define and use class constants
Week 3: Strings, Parameters, Returns
Mon, Oct 11
Lesson 5

Expressions; Types

Students will be able to...
  • evaluate arithmetic expressions in Java
  • define and use int and double variables
Tue, Oct 12
Labs 2,3

Expressions, Variables, for loops;
Parameters

Wed, Oct 13
Lesson 6

Parameters; User Input w/Scanner

Students will be able to...
  • define scope
  • define and call methods that take parameters
  • use Scanner to create interactive programs
Thu, Oct 14
Section 3

Parameters; String; Scanner

Fri, Oct 15
Lesson 7

User Input w/Scanner; Strings

Students will be able to...
  • use Scanner to create interactive programs
  • manipulate String values
Week 4: Interactive Programs
Mon, Oct 18
Lesson 8

Return values

Students will be able to...
  • define and call methods that return values
  • use methods from the Math class
Tue, Oct 19
Lab 4

Return values; Conditionals; User Input

Wed, Oct 20
Lesson 9

Conditionals

Students will be able to...
  • define and use conditional (if) statements
  • define and use compound conditionals
  • choose the most appropriate conditional structure for a given problem
Thu, Oct 21
Section 4

Return values; Conditionals; User Input

Fri, Oct 22
Lesson 10

Cumulative algorithms; Information flow

Students will be able to...
  • describe and implement cumulative algorithms
  • factor code in conditional statements to avoid redundancy
  • recognize and avoid chaining
Week 5: Indefinite Loops
Mon, Oct 25
Lesson 11

String traversals; Fencepost problems; while loops

Students will be able to...
  • compare and manipulate String values
  • manipulate individual characters in a String
  • define and implement fencepost loops
  • define and use while loops
Tue, Oct 26
Lab 5

while loops; String

Wed, Oct 27
Lesson 12

Sentinel loops; pseudorandomness

Students will be able to...
  • implement fencepost and sentinel loops
  • generate pseudorandom numbers with Random
Thu, Oct 28
Section 5

while loops; pseudorandomness; boolean

Fri, Oct 29
Lesson 13

boolean variables, parameters, and returns

Students will be able to...
  • define and use boolean expressions and values
  • define and call methods that return boolean values
  • recognize and practice good "Boolean zen"
Week 6: File Processing
Mon, Nov 1
Lesson 14

Token-based file input (canceled - Brett sick)

Students will be able to...
  • read input from a file using the File class
  • read token-based input using the Scanner class
  • account for different types and numbers of tokens in an input file
Tue, Nov 2
Lab 5.5

Simulated midterm practice

Wed, Nov 3
Lesson 15

Line-based file input; File output (canceled - Brett sick)

Students will be able to...
  • read line-based input from a file
  • use Scanner tokenize a String
Thu, Nov 4
Section 6

Simulated midterm practice; File processing

Week 7: Arrays
Mon, Nov 8
Lesson 16

File I/O review

Students will be able to...
  • read line-based input from a file and tokenize the lines
  • produce file output use PrintStream
Tue, Nov 9
Lab 6

File processing

Wed, Nov 10
Lesson 17

Intro. to arrays

Students will be able to...
  • define, populate, and manipulate arrays
Thu, Nov 11

No class - Veteran's Day

Week 8: Object-oriented Programming
Tue, Nov 16
Lab 7

Arrays

Thu, Nov 18
Section 7

Arrays

Week 9: More OOP
Tue, Nov 23
Lab 8

Object-oriented programming

Thu, Nov 25

No Class - Thanksgiving

Fri, Nov 26

No Class - Day after Thanksgiving

Week 10: Inheritance
Tue, Nov 30
Lab 9

Critters

Thu, Dec 2
Section 8

Object-oriented progamming; Critters

Week 11: Wrap-up
Tue, Dec 7
Lab 10

Final review/practice

Wed, Dec 8
Lesson XX

Victory lap

Thu, Dec 9
Section 9

TBD

Fri, Dec 10
Lesson XX

Critter tournament

Exam Week
Mon, Dec 13

Tue, Dec 14

Thu, Dec 16

Fri, Dec 17