August 2024
Su Mo Tu We Th Fr Sa
             1  2  3
 4  5  6  7  8  9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31



   September 2024
Su Mo Tu We Th Fr Sa
 1  2  3  4  5  6  7
 8  9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30



    October 2024
Su Mo Tu We Th Fr Sa
       1  2  3  4  5
 6  7  8  9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31



   November 2024
Su Mo Tu We Th Fr Sa
                1  2
 3  4  5  6  7  8  9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30



   December 2024
Su Mo Tu We Th Fr Sa
 1  2  3  4  5  6  7
 8  9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

CSCI 161 Fall 2024 Schedule*
Thomas Rogers
* subject to change
revised Aug 14, 2024

Date Week Topic Reading Assignment
Aug 26 1 Lecture 1 - Syllabus Review, Programming - What is it and why is it important?, Intro to Java, "Hello World" Chapter 1 - Introduction to Java Programming
Aug 28 Lecture 2 - String class, Output, Static Methods, Pitfalls, Procedural Decomposition Section 3.3 - Using Objects (String class and Scanner class)
Sep 2 2 Labor Day - No In-Person Classes
Sep 4 Lecture 3 - Primitive Data Types, Expressions & Operations, Casting, Variables Chapter 2 - Primitive Data and Definite Loops
Sep 9 3 Lab Intro - Overview of Lab and Online Resources
Lab 1 - "M-I Crooked Letter"
Sep 11 Lecture 4 - User Input, Parameters, Methods that Return Values, Conditional Execution, Indefinite Loops, Commenting Style Chapter 3 - Introduction to Parameters and Objects, Chapter 4.1, Chapter 5.1#1
Sep 16 4 Lab 2 - "Give Me a Second!"
Sep 18 Lecture 5 - Definite Loops, Nested Loops, Managing Complexity Chapter 2 - sections 2.3, 2.4#2
Sep 23 5 Lab 3 - "Looper"
Sep 25 Lecture 6 - Exam #1 Review (through chapter 3, 4.1, 5.1)
Sep 30 6 Exam #1 - In Linux Lab
Oct 2 Lecture 7 - Exam #1 return and review, Cumulative Algorithms Chapter 4 - Conditional Execution#3
Oct 7 7 Lab 4 - "Number Wizard"
Oct 9 Lecture 8 - Text Processing (chapter 4), do/while, Fencepost Algorithms, boolean Type, Assertions Chapter 5 - Program Logic and Indefinite Loops#4
Oct 12 - 15 8 Fall Recess - No Classes
Oct 16 Lecture 9 - File Reading Basics, Token-Based, Line-Based & Advanced File Processing Chapter 6 - File Processing
Oct 21 9 Lab 5 - "Don't Fence Me In!"
Oct 23 Lecture 10 Exam #2 Review (through chapter 6)
Oct 28 10 Exam #2
Oct 30 Lecture 11 - Exam #2 Return; Array Basics, Array Traversal Algorithms Chapter 7 - Arrays
Nov 4 11 Lab 6 - "Dives"
Nov 6 Lecture 12 - Reference Semantics, Advanced Array Techniques, Multidimensional Arrays
Nov 11 12 Lab 7 - "Deeper Dives" (self-directed)
Nov 13 Lecture 13 - Object Oriented Programming (OOP) Basics Chapter 8 - Classes
Nov 18 13 Lab 8 - "Flip"
Nov 20 Lecture 14 - OOP Constructors, Encapsulation, Inheritance Chapter 8, Chapter 9.1, 9.2
Nov 25 14 Lab 9 - "Zip Distances"
Nov 27 - 29 Thanksgiving Recess - No Classes
Dec 2 15 Lab 10 - "Car Class"
Dec 4 Lecture 15 - Final Exam Review
Dec 9 16 Open Lab and Study Session
Dec 12 Final Exam Wednesday Dec 12th 6:00pm to 7:50pm, OTB 130 (Lab)