January 2024
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
 
1
 
2
 
3
 
4
 
5
 
6
 
7

 
Week 1
8

 
9

Class 1: Introduction to IC211

homework
Monday Schedule
10

Class 2: Java Types - primitive values vs. array objects vs. class objects

homework
11

 
12

Lab 1:
Intro to Java
13

 
14

 
Week 2
15

 
MLKJ Day
16

 
17

Class 3: Procedural programming in Java - classes as structs (grouping data), classses as function libraries (grouping functions)

homework
18

 
19

 
Snow Day
20

 
21

 
Week 3
22

Lab 2:
Procedural Pograms in Java / MidLibs
23

 
24

Class 4: Object encapsulation - bundling data & functions
handout
homework(due 1/26)
25

 
26

Class 5: Data hiding - access modifiers/constructors
homework(due 2 Feb)
Lab 3:
Encapsulation, Information Hiding & Style (start lab)
27

 
28

 
Week 4
29

Finish Lab 3
30

 
31

Class 6: Encapsulation & Information Hiding Reprise / Odds-n-ends
activity
homework
     

February 2024
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
       
1

 
2

Lab 4:
Meet Queue (Short Lab)
Project 1 assigned
3

 
4

 
Week 5
5

Class 7: Inheritance — adding functionality I

homework
6

 
Project 1 Part 1 due
7

Class 8: Inheritance — adding functionality II, protected

activity
8

 
9

Lab 5:
Inheritance - modifying/extending Random
(and work on project!)
10

 
11

 
Week 6
12

6-week exam
13

 
14

Class 9: iterators
15

 
16

Lab 6:
Inheritance & iterators - Processing Twitter data
17

 
18

 
Week 7
19

 
Presidents Day
20

 
21

Class 10: Polymorphism

homework
6-week grades due
22

 
23

Lab 7:
Polymorphism - OOP-izing a Procedural Program
24

 
25

 
Week 8
26

Class 11: Inheritance — expressing commonality, hierarchies
27

 
28

Class 12: More class hierarchies, abstract methods and classes
29

 
   

March 2024
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
         
1

Lab 8:
Object Oriented Design
2

 
3

 
Week 9
4

Class 13: OOP Case Study: Exceptions I

homework
5

 
6

Class 14: OOP Case Study: Exceptions II
7

 
8

Lab 9:
Exceptions
No mid-day break
9

 
10

 
11

 
Week 10
Spring Break
12

 
Spring Break
13

 
Spring Break
14

 
Spring Break
15

 
Spring Break
16

 
17

 
18

Class 15: Interfaces
Week 11
Project 2 assigned
19

 
20

Class 16: ArrayLists and Generics

homework
21

 
22

Work on Project
Project 2 Part 1 due
23

 
24

 
25

Class 17: OOP Case Study: Java I/O

homework
Week 12
26

 
27

Class 18: OOP Case Study: Java GUIs I
Project 2 Part 2 due
28

 
29

Work on Project
30

 
31

 
Week 13
           

April 2024
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
 
1

Class 19: OOP Case Study: Java GUIs II

homework
2

 
3

12-Week Exam
4

 
5

Lab 10:
GUIs
6

 
7

 
Week 14
8

Class 20: Exam and Project Debrief

homework
9

 
12-week grades due
10

Class 21: OOP Case Study: Threads I

homework
Project 3 assigned
11

 
12

Lab 11:
Threads
13

 
14

 
Week 15
15

Class 22: Threads II

homework
16

 
17

Class 23: OOP Case Study: Java Graphics I
Project 3 Part 1 milestone due
18

 
19

Lab 12:
Graphics & Animations
20

 
21

 
Week 16
22

Work on Project
Project 3 Part 2 milestone due
23

 
24

Class 24: OOP Wrap up I
25

 
26

Work on Project
27

 
28

 
Week 17
29

OOP Reprise & SOFs
30

 
       

May 2024
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
     
1

Class 25: Software & Society: Software Licenses
2

 
Study Day (and proj03 grace day)
3

 
Finals Start
4

 
5

 
6

 
7

 
8

 
9

 
Final Exam 1300
10

 
Finals End
11
 
12
 
13
 
14
 
15
 
16
 
17
 
18
 
19
 
20
 
21
 
22
 
23
 
24
 
25
 
26
 
27
 
28
 
29
 
30
 
31