...
Please fill out this survey.
Pick a Lab Section
Confirm that You Can Attend Lab
The lab is an essential component of the course. Every student should attend lab on Tuesday 10:50-12:05 in Ryon 102.
If you have a conflict, you probably should drop the course. If you have a conflict, but still want to take the course, please come see Prof. Cartwright or Prof. Wong to evaluate your optionsEvery student must attend an assigned lab section each week. Lab sections meet M 2-3:25pm, M 3:30-4:55pm, and T 2:30-3:55 in Ryon 102 (the CLEAR lab room on the ground floor of the Ryon Building). If you have not already contacted Dr. Nguyen (dxnguyen@rice.edu), immediately send him an email message stating your preferred lab sections (first and second choices).
Computing Environment
All Comp 211 programming assignments will be run and graded on the new CLEAR (Linux) educational computing facility. The Ryon 102 lab is equipped with machines connected to the CLEAR network.
For instructions on how to use CLEAR, see the CLEAR web page.
Errata
The Confluence This wiki for Comp 211 is new and presumably full a revision of last year's and may contain a significant number of broken links and typos. If you notice an error in the wiki, please send email to the Comp 211 staff.
...
Note that future date schedules are only guidelines. Future homeworks and slides may contain materials from previous Comp 210 and Comp 212 classes. New material will be provided before the corresponding class. There will only be two exams in the course: one given on functional programming during week 7 and one on object-oriented programming given during in the last week of the course. Both are take-home exams. There is no final examination.
| Day | Date(20092011) | Topic | Reading | Lectures | Problems | Due(20092011) | Lab | Supplements |
---|---|---|---|---|---|---|---|---|---|
1 | Mon | Jan 10 | Introduction & Scheme Primitives |
| W Jan 12 | ||||
2 | Wed | Jan 12 | Inductive data, conditionals, and the design recipe | F Jan 21 |
|
| |||
3 | Fri | Jan 14 | Data-directed design I |
|
|
|
| ||
- | Mon | Jan 17 | School Holiday |
|
|
|
|
| |
4 | Wed | Jan 19 | Data-directed design II |
|
|
|
| ||
5 | Fri | Jan 21 | Mutually Referential Data Definitions | Fri Jan 28 |
|
| |||
6 | Mon | Jan 24 | Local Definitions and Lexical Scope |
|
|
| |||
7 | Wed | Jan 26 | Functional Abstraction and Polymorphism |
|
|
|
| ||
8 | Fri | Jan 28 | Functions as Values | Fri Feb 5 |
|
| |||
9 | Mon | Feb 01 | xxx | xxxx |
|
|
| ||
10 | Wed | Feb 03 | Lambda the Ultimate |
|
|
|
| ||
11 | Fri | Feb 05 | Generative Recursion | Fri Feb 15 |
|
| |||
12 | Mon | Feb 08 | Generative Recursion Illustrated |
|
|
| |||
13 | Wed | Feb 10 | Complexity and Accumulators |
|
|
|
| ||
14 | Fri | Feb 12 | Accumulators and Tail Calls | Fri Feb 19 |
|
| |||
15 | Mon | Feb 15 | Clever Programming With Functions | Review prior readings |
|
| |||
16 | Wed | Feb 17 | Vectors and Iteration | Review prior readings |
|
|
|
| |
17 | Fri | Feb 19 | Exam Review | Review prior readings | HW 6 (optional) | Fri Feb 26 |
|
| |
18 | Mon | Feb 22 | On to Java | OO Design Notes Ch 1.1-1.4 |
|
| |||
19 | Wed | Feb 24 | Java Design Recipe | OO Design Notes Ch 1.1-1.4 |
|
|
|
| |
20 | Fri | Feb 26 | Defining Inductive Data in Java | OO Design Notes Ch 1.5 |
|
| |||
- | M-F | Mar 01-05 | Spring Break |
|
|
|
|
|
|
21 | Mon | Mar 08 | Static Class Members and the Singleton Pattern | OO Design Notes Ch 1.6 |
|
| |||
22 | Wed | Mar 10 | Polymorphism and Interfaces | OO Design Notes Ch 1.8 |
|
|
| ||
23 | Fri | Mar 12 | Handling Exceptions and Errors | OO Design Notes Ch 1.9-1.10, 1.12 | Fri Mar 13 |
|
| ||
24 | Mon | Mar 15 | The Strategy and Visitor Patterns | OO Design Notes Ch 1.9, 1.11 |
|
| |||
25 | Wed | Mar 17 | Visitors, Visitors, Vistors ... | OO Design Notes Ch 1.11 |
|
|
|
| |
26 | Fri | Mar 19 | Full Java, Arrays, Mutation | OO Design Notes Ch 1.13 | Wed Mar 31 |
| |||
27 | Mon | Mar 22 | Visibility, Type-Checking, and Generics | OO Design Notes Ch. 1.10, 1.13 |
|
| |||
28 | Wed | Mar 24 | Generics with Discretion |
|
|
|
|
| |
29 | Fri | Mar 26 | Mutation and Bi-Directional Linked Lists | OO Design Notes Ch 1.13 |
|
|
|
| |
30 | Mon | Mar 29 | Graphical User Interfaces | OO Design Notes Ch 3 |
|
|
| ||
31 | Wed | Mar 31 | Anonymous Inner Classes and Task Decomposition | OO Design Notes Ch 2.1 |
|
| |||
- | Fri | Apr 2 | School Holiday |
|
|
|
|
|
|
32 | Mon | Apr 5 | Mutable Trees | OO Design Notes Ch 2.1 |
|
| TreeMap.java | ||
33 | Wed | Apr 7 | Review: Confronting the Reality of Full Java |
|
|
|
|
| |
34 | Fri | Apr 9 | QuickSort Revisited |
|
|
| FunctionalQuicksort.java | ||
35 | Mon | Apr 12 | Graphical User Interfaces II | OO Design Notes |
|
|
| ||
36 | Wed | Apr 14 | OO Sorting Algorithms |
|
|
|
| Design Patterns for Sorting.pptx | |
37 | Fri | Apr 16 | Fast Searching with Balanced Trees |
|
|
| Red-Black Trees | ||
38 | Mon | Apr 19 | Fast Searching and Memoization |
|
|
| |||
39 | Wed | Apr 21 | Parallel Programming Tradeoffs |
|
|
|
|
| |
40 | Fri | Apr 23 | Exam II Review |
|
|
|
|
...