| Week |
Session |
Prep |
HW Due |
Topics |
Resources |
Milestones |
| 1 |
1
Tue Nov 30
Details
|
|
|
- Introduction: Students, assistants and instructor
- Introduction: Course, computer science, software development
- Introduction: Eclipse (IDE, Interactive Development Environment) and Subversion (SVN, version control)
- Introduction: Python (our programming language)
- The input/compute/output pattern: chaos.py
|
- Slides: Introduction to the Course, Eclipse and Python
|
|
| 1 |
2
Thu Dec 2
Details
|
|
|
- Basic program structure
- The input/compute/output pattern
- Defining functions without parameters
- Printing versus returning a value
- Constructing objects
- Using objects: dot notation for methods and instance variables
- zellegraphics as an example of constructing and using objects
- Robots — introduction to physical properties of the iRobot Create
|
|
|
| 1 |
3
Fri Dec 3
Details
|
|
- HW 2
But accepted without penalty until Monday at 5 p.m. (as usual for homework assigned on Thursday)
|
- Formal parameters and actual arguments
- Pair Programming
- Robots — introduction to the Create class for programming the iRobot Create
|
|
|
| 2 |
4
Tue Dec 7
Details
|
|
|
- Review and Practice at topics we have covered
- Practice at functions with parameters that return values, and calling them with actual arguments
- Variables and assignment
- Introduction to using a debugger
- Counted Loops, including the range function
- Accumulator loops
|
- Slides: Loops — Counted and Accumulator
|
|
| 2 |
5
Thu Dec 9
Details
|
- Zelle, Chapter 4
BUT much of Chapter 4 has details that you should just skim,
- Note that our
zellegraphics package replaces the author's graphics package
|
|
- Types
- Sequences (especially Lists)
|
- Slides: Objects — constructing, applying methods, referencing instance variables (aka fields)
|
|
| 2 |
6
Fri Dec 10
Details
|
|
- HW 5
But accepted without penalty until Monday at 5 p.m. (as usual for homework assigned on Thursday)
|
- Practice: Loops — Counted loops and Accumulator loops
- Practice: Objects — Constructing, applying methods, referencing instance variables (aka fields)
- Practice: Robots — Constructing, applying methods, using in functions
- Robots: getting sensor input
|
|
|
| 3 |
7
Tue Dec 14
Details
|
- Zelle, §5.1–5.3, and §5.6. Also review §2.6.
|
|
- Strings: String operations. Lists and strings. String encoding. String formatting.
- Processing files
- Writing simple functions
- Functions calling other functions.
|
|
|
| 3 |
8
Thu Dec 16
Details
|
- Sections 5.6-5.10
20 pages
- 4.1-4.9
(36 pages, BUT much of Chapter 4 has details that you should just skim,
- Note that our
zellegraphics package replaces the author's graphics package.
|
|
- Using a Debugger
- Introduction to Objects and object-based programming
- Graphics
- Animation
|
- Slides: Sequences — Lists, Strings, Tuples
|
|
| 3 |
9
Fri Dec 17
Details
|
|
- HW 8
But accepted without penalty until next Monday at 5 p.m. (as usual for homework assigned on Thursday)
|
- Review Functions: Defining, calling, returning values.
- Optional parameters
- Returning more than one value from a function
- Mutators — Mutation of parameters
- Practice, including debugging
|
|
|
| 4 |
10
Tue Jan 4
Details
|
|
|
- Exam 1 topics
- Decision structures (
if statements)
- Boolean constants and variables (a.k.a. flags)
- Boolean operators: and, or, not
|
- Slides: Exam 1 preview, Decision structures (if .. elif .. else), Files
|
|
| 4 |
11
Thu Jan 6
Details
|
|
|
- Definite loops (review, for statements)
- Indefinite loops ( while statements, break statements)
- Prepare for Exam 1
|
- Slides While loops, Exam 1 advice
|
|
| 4 |
12
Fri Jan 7
Details
|
|
|
- Exam 1 is MONDAY EVENING, 1/10/2011,
7 p.m. to 9 p.m.
- OPTIONAL review session during regular daytime class session Friday
|
- Bring to the exam:
- Laptop, including power adapter and network cable
- Cheat Sheet (one 8.5 by 11 page, back and front)
- Your textbook (Zelle)
- Any printed or handwritten materials you want for the On-the-Computer part
|
Exam 1 Monday (01/10/2011) evening 7 p.m. to 9 p.m. | Section | Room |
|---|
| Fisher | O267 | | Mutchler | O269 |
|
| 5 |
13
Tue Jan 11
Details
|
|
|
- Loop patterns for input
- The max-min loop pattern
- The wait-for-event loop pattern
- Structure charts
- Robot line following
|
|
|
| 5 |
14
Thu Jan 13
Details
|
|
|
- Nested loops
- Mutators and Box-and-Pointer Diagrams
- Robot Line Following
|
|
|
| 5 |
15
Fri Jan 14
Details
|
|
- HW 14
But accepted without penalty until Monday at 5 p.m. (as usual for homework assigned on Thursday)
|
- Top-Down design -- Blackjack exericise
- Bottom-up testing
|
|
|
| 6 |
16
Tue Jan 18
Details
|
- 11.1-11.3, 11.6
(30 pages)
|
|
|
- Slides GUIs, Event-driven programming, tkinter and ttk
|
|
| 6 |
17
Thu Jan 20
Details
|
|
|
|
|
|
| 6 |
18
Fri Jan 21
Details
|
|
|
- Defining and using classes in Python, part two
- Project time, working toward features in the Grading Rubric
|
- Slides Defining your OWN classes
|
|
| 7 |
19
Tue Jan 25
Details
|
|
|
|
|
|
| 7 |
20
Thu Jan 27
Details
|
|
|
- OPTIONAL class period for Exam 2 review and/or project time
- Exam 2 is MONDAY EVENING, 1/31/2011,
7 p.m. to 9 p.m.
- Project time, working toward features in the Grading Rubric
|
| |
| 7 |
21
Fri Jan 28
Details
|
|
|
- We WILL have class today (Friday)
- Exam 2 is MONDAY EVENING, 1/31/2011,
7 p.m. to 9 p.m.
- Take-home Quiz
- (5:24) Configuring C Workspace [local] [slides]
- (10:50) Worked example: First C Program [local] [slides]
- Introduction to the C Programming Language
- Project time, working toward features in the Grading Rubric
|
- Bring to the exam:
- Laptop, including power adapter and network cable
- Cheat Sheet (one 8.5 by 11 page, back and front)
- Your textbook (Zelle)
- Any printed or handwritten materials you want for the On-the-Computer part
- Slides Exam 2 topics
|
Exam 2 Monday (01/31/2011) evening 7 p.m. to 9 p.m. | Section | Room |
|---|
| Fisher | O267 | | Mutchler | O269 |
|
| 8 |
22
Tue Feb 1
Details
|
|
|
- Formal intro. to the C Programming Language
- Some Python-esque features of C
|
|
|
| 8 |
23
Thu Feb 3
Details
|
|
- HW 22
Eclipse Projects: CNestedLoops, ThatsPerfect
|
|
|
|
| 8 |
24
Fri Feb 4
Details
|
|
- HW 23
Eclipse Project: RectangleStructs
|
- Pointers in C
- Passing pointers to functions
|
|
|
| 9 |
25
Tue Feb 8
Details
|
|
- HW 24
Eclipse Project: PointersHomework
|
- Arrays (but no dynamic allocation)
- Arrays are Pointers
|
|
|
| 9 |
26
Thu Feb 10
Details
|
|
- HW 25
Eclipse Project: HousePrices
|
|
|
|
| 9 |
27
Fri Feb 11
Details
|
|
- HW 26
Eclipse Project: StringFunctions
|
|
|
|
| 10 |
28
Tue Feb 15
Details
|
|
|
|
|
|
| 10 |
29
Thu Feb 17
Details
|
|
|
|
|
|
| 10 |
30
Fri Feb 18
Details
|
|
- Complete (or nearly complete) the Transcript Project. It is due before you go to bed tonight (Friday).
|
- Course evaluations
- Final exam review
- Continue working on the Transcript Project if you have not yet completed it
|
|
Final Exam: Tuesday (2/22) evening 6 p.m. to 10 p.m.
| Section | Room |
|---|
| 01 (Clifton) | O169 | | 02 (Mutchler) | O167 | | 03 (Fisher) | O257 |
|