The course meets twice a week (Tuesday/Thursday). All course meetings will be interactive, including discussion, activities, quizzes, etc. As such, it is important to be prepared by completing the pre-lecture activities before coming to class.

The lecture schedule below is incomplete. It will be revised as the semester goes along. Links to lecture slides will be broken until after the lecture is completed.

Index Date Pre-lecture Activity Topic & Slides
1 1/16 Learn Java Introduction & Git (handout)
2 1/18 Java and Testing
3 1/23 Read Chapters 1, 2, and 3 of textbook Naming and Code Reviews
4 1/25 Nothing JSON and ArrayLists (Repo From Lecture)
5 1/30 Read Chapter 4 of textbook & Section 4 of style guide Layout & Inheritance (handout)
6 2/1 none HTTP & Variables (handout, updated handout, updated the WashingtonPost github)
7 2/6 Read Chapters 5 and 6 of textbook Commenting/JavaDoc and Defensive Programming
8 2/8 none Object Design
9 2/13 Read Chapters 7 and 8 of textbook Writing expressions and control flow
10 2/15 Design Patterns and UML
11 2/20 Read Chapter 9 of textbook Variables and C++n(Handout)
12 2/22 none More C++
13 2/27 none TBA
14 3/1 none TBA