Lectures
In this section, you’ll find brief notes from each lecture. For more detailed notes, please see the book.
1 1/7: Objects
- Announcements
Course staff introductions.
Basic class mechanics.
On the experimental nature of this course.
The first assignment is due this Wednesday.
The first lab is tonight.
Partners will be assigned in lab.
Questions?
- Basics of objects
New paradigm. Open your mind and embrace it (or you will be miserable).
Rocket, designed in functional style.
Rocket, designed in object-oriented style.
Landing and take off.
Moon.
If you don’t have a CCIS account, you need to get one TODAY.
2 1/10: Data definitions and functionality with classes
3 1/14: Interfaces
4 1/17: Zombies
5 1/21: No Class
MLK Day
6 1/24: Delegation, Zombies II
7 1/28: Universe and accumulator invariants
8 1/31: Inheritance
9 2/4: Properties and random testing
10 2/7: Function objects and parameterized data definitions
11 2/11: Overrriding and default worlds and universes
12 2/14: Black-box testing, invariants, amortized analysis, and function constructors
13 2/18: Holiday (Presidents Day)
There is no lecture on 2/18 since it is Presidents Day.
14 2/21: Constructors and visitors
15 2/25: Java I: Syntax and Semantics
16 2/28: Java II: Types + Project Intro
17 3/4: Holiday (Spring Break)
There is no lecture on 3/3 since it is during Spring break.
18 3/7: Holiday (Spring Break)
There is no lecture on 3/6 since it is during Spring break.
19 3/11: Mutation I
20 3/14: Mutation II
21 3/18: Overriding
22 3/21: Equality I
23 3/25: Equality II
24 3/28: Implementing OO
25 4/1: Mixins and Prototypes
26 4/4: Slack
27 4/8: Slack
28 4/11: Slack
29 4/15: Holiday (Patriot’s Day)
There is no lecture on 4/15 since it is Patriot’s Day.