Tuesday
Wednesday
Friday
Session
1
September 3
Introduction to Python and PyCharm.
Objects: Constructing, methods, instance variables.
Session
2
September 7
Expressions, names (variables), and assignment.
Objects: Constructing, methods, instance variables.
Functions and methods. Parameters and arguments.
Control flow.
Session
3
(September 8)
Loops and summing.
Scope, namespaces, returning values.
Unit testing, specifications, and test-first programming.
Objects and APIs.
Session
4
(September 10)
Conditionals / Boolean Logic.
The Accumulator Pattern and Counting.
Pair programming
The first-do-a-concrete-example-by-hand principle.
Session
5
(September 14)
Debugging and stack traces.
Code reviews.
Exam 1 practice.
Session
6
(September 15)
Tracing code by hand.
More Exam 1 practice.
Session
7
(September 17)
No regular class.
Exam 1 is an EVENING exam
on Monday, September 20, from 7:30 p.m. to 10:30 p.m.
Rooms TBA.
Session
8
(September 21)
Names and references, box-and-pointer diagrams.
Classes: the concept and notation.
Implementing classes.
Session
9
(September 22)
More implementing classes.
Determining when instance variables are needed.
Session
10
(September 24)
Range expressions.
Sequences.
Session
11
(September 28)
Patterns for sequences.
Session
12
(September 29)
More patterns for sequences.
Session
13
(October 1)
Exam 2 practice.
Solving larger problems, combining patterns.
Session
14
(October 5)
Tracing code by hand through class implementations.
More Exam 2 practice.
Session
15
(October 6)
No regular class.
Exam 2 is an EVENING exam
on Wednesday, October 6, from 7:30 p.m. to 10:30 p.m.
Rooms TBA.
Session
16
(October 8)
Console input.
The wait-until-event pattern, WHILE (indefinite) loops.
Session
17
(October 12)
Loops within loops, sequences within sequences.
Two-dimensional printing and graphics.
Session
18
(October 13)
More loops within loops, sequences within sequences.
Session
19
(October 19)
Mutating sequences, box-and-pointer diagrams.
Implementing classes, revisited.
Session
20
(October 20)
Exam 3 practice.
Session
21
(October 22)
Capstone Team Project: introduction and PyGame Tutorials.
Note that Exam 3 is an EVENING exam;
see Session 22.
Session
22
(October 26)
No regular class.
Exam 3 is an EVENING exam on the PREVIOUS evening,
that is,
on Monday, October 25, from 7:30 p.m. to 10:30 p.m.
Rooms TBA.
Session
23
(October 27)
PyGame Tutorials continue.
Capstone Team Project: your game begins.
Session
24
(October 29)
PyGame Tutorials continue.
Capstone Team Project: your game continues.
Session
25
(November 2)
PyGame Tutorials continue.
Capstone Team Project: your game has implemented initial features.
Session
26
(November 3)
PyGame Tutorials end.
Capstone Team Project: your game continues.
Session
27
(November 5)
Capstone Team Project: your game is playable, essential features are implemented.
Session
28
(November 9)
Capstone Team Project: your game continues.
Session
29
(November 10)
Capstone Team Project: your game continues.
Session
30
(November 12)
Capstone Team Project: your game is complete or nearly so.
Final exam and project due
Day and time TBD.
Final exam and project due
Day and time TBD.
Final exam and project due
Day and time TBD.