The lecture schedule will be updated as the term progresses.
Make sure you are registered for the course Gradescope and Piazza.
Date | Topic | Reading | Assignment |
---|---|---|---|
Tue, Jan 23, 2024 |
Lecture 1 Course Introduction Terminal, Compiling [slides] |
Chapter 1: Computer Programming
|
Lab00 - CS Lab Machines 101: Command Line (Do before Lab on Thursday)
|
Thu, Jan 25, 2024 |
Lecture 2 Data Types (Ints, doubles, strings) [slides] |
Chapter 2: Variables & Operators
|
Lab01 - Data Types & Expressions
|
Sun, Jan 28, 2024 |
|
HW00 - Hello World, Compile Errors
(Due Thu, Feb 1, 2024)
|
|
Tue, Jan 30, 2024 |
Lecture 3 I/O (input/output) [slides] |
Chapter 3: Input & Output
|
|
Thu, Feb 1, 2024 |
Lecture 4 Methods I [slides] |
Chapter 4: Methods & Testing
|
Lab02 - I/O & Methods
|
Sun, Feb 4, 2024 |
|
HW01 - Variables & I/O
(Due Thu, Feb 8, 2024)
|
|
Tue, Feb 6, 2024 |
Lecture 5 Methods II [slides] |
Chapter 4: Methods & Testing
|
|
Thu, Feb 8, 2024 |
Lecture 6 Booleans & Conditionals [slides] |
Chapter 5: Conditionals & Logic
|
Lab03 - Conditionals & String Methods
|
Sun, Feb 11, 2024 |
|
HW02 - I/O & Methods
(Due Sun, Feb 18, 2024)
|
|
Tue, Feb 13, 2024 |
Recursion |
Chapter 6: Recursive Methods
|
|
Thu, Feb 15, 2024 |
Lecture 8 Recursion [slides] |
Chapter 7: Objects: Strings
|
Lab04 - Recursion & Arrays
|
Sun, Feb 18, 2024 |
|
HW03 - Conditionals, Methods, & Strings
(Due Thu, Feb 22, 2024)
|
|
Tue, Feb 20, 2024 |
Lecture 9 Strings as Objects Arrays I [slides] |
Chapter 8: Arrays and References
Chapter 10.5: Command Line Arguments |
|
Thu, Feb 22, 2024 |
Lecture 10 Arrays II [slides] |
Chapter 8: Arrays and References
|
Lab05 - Recursion with Arrays
|
Sun, Feb 25, 2024 |
|
HW04 - Arrays & Recursion
(Due Sun, Mar 3, 2024)
|
|
Tue, Feb 27, 2024 |
Lecture 11 Loops I [slides] |
Chapter 9: Loops
|
|
Thu, Feb 29, 2024 |
Lecture 12 Loops II [slides] |
Chapter 9: Loops
|
|
Sun, Mar 3, 2024 |
|
HW05 - Loops
(Due Sun, Mar 17, 2024)
|
|
Tue, Mar 5, 2024 |
Lecture 13 Midterm Review [slides] |
||
Thu, Mar 7, 2024 |
Midterm I
|
||
Tue, Mar 12, 2024 |
Spring Break
|
||
Thu, Mar 14, 2024 |
Spring Break
|
Date | Topic | Reading | Assignment |
---|---|---|---|
|
|||
Tue, Mar 19, 2024 |
Lecture 14 Arrays of Arrays
[slides]
|
Chapter 10: Immutable Objects
Chapter 11: Mutable Objects |
|
Thu, Mar 21, 2024 |
Lecture 15 Class Design [slides] |
Chapter 12: Designing Classes
|
Lab06 - Loops and 2D arrays
|
Sun, Mar 24, 2024 |
|
HW06 - Board Game
(Due Thu, Apr 4, 2024)
|
|
Tue, Mar 26, 2024 |
Lecture 16 Arrays of Objects [slides] |
Chapter 13: Arrays of Ojbects (everything up to 13.7)
|
|
Thu, Mar 28, 2024 |
Lecture 17 Relationships! (Inheritance) [slides] |
Chapter 15: Extending Classes
|
Lab07 - Files and exceptions
|
Tue, Apr 2, 2024 |
Lecture 18 Class Actions (Interfaces) [slides] |
Chapter 18.7: Interfaces
|
|
Thu, Apr 4, 2024 |
Lecture 19 Binary Search I [slides] |
Chapter 13.8: Binary Search
|
Lab08 - Class Design
|
Sun, Apr 7, 2024 |
|
HW07 - Class design
(Due Thu, Apr 11, 2024)
|
|
Tue, Apr 9, 2024 |
CLASS CANCELLED Binary Search II |
Chapter 13.8: Binary Search
|
|
Thu, Apr 11, 2024 |
Lecture 21 Sorting I [slides] |
Chapter 14: Objects of Arrays
|
Lab09 - Interfaces
|
Sun, Apr 14, 2024 |
|
HW08 - OOP
(Due Thu, Apr 18, 2024)
|
|
Tue, Apr 16, 2024 |
Lecture 22 Midterm Review I [slides] |
||
Thu, Apr 18, 2024 |
Lecture 23 Midterm Review |
No Lab - Extra Credit Opportunity
|
|
Tue, Apr 23, 2024 |
Midterm II
[slides]
|
Date | Topic | Reading | Assignment |
---|---|---|---|
Thu, Apr 25, 2024 |
Lecture 25 Run time [slides] |
Lab10 - Sorting
|
|
Sun, Apr 28, 2024 |
|
HW09 - SuperDuper Array
(Due Tue, May 7, 2024)
|
|
Tue, Apr 30, 2024 |
Lecture 26 Final Review [slides] |
||
Thu, May 2, 2024 |
Lecture 27 Final Review [slides] |
Lab11 - Runtime
|