Unless otherwise stated, each lab is due at 11:59 p.m., CDT, on the Monday of the following week.
Week | Lecture | Topics | Readings/Assignment | Lab |
---|---|---|---|---|
1 | 1 | Note 1: Languages Note 2: Basic Ruby |
Ruby
in Twenty Minutes Programming Ruby: Ruby.new |
Prep: Assignment
0 Lab 1: Ruby.0 |
2 | Note 3: [2..Ruby] | Programming Ruby ..Standard Types | ||
3 | Continue note 3 | Assignment: Homework 1 (due Wed., March 12) | ||
2 | 1 | Note 3; Note 4: Classier Ruby | Lab 2: Ruby text analysis | |
2 | Note 5: C++ 101 | Stroustrup 1-1.3 | ||
3 | C++ functions, scope and lifetime | Stroustrup 1.4-1.7 |
||
3 | 1 | Note 5: types, arrays, pointers | Stroustrup 1.8-1.9, Online Quiz (due 3/18 at 9am) | Lab 3: Histograms |
2 | Note 5 continued | |||
3 | Note 5 continued | |||
4 | 1 | Note 6: classes; online Quiz 2 due | Stroustrup 2.3, 2.5 | Lab 4: MeetUp++ |
2 | Note 7: Modularity in C++ | Stroustrup 3-3.2 | ||
3 | Modularity, continued | |||
5 | 1 | Namespaces, exceptions, assertions | Read Stroustrup 3.4-3.6; Quiz - bring a half-page of hand-written notes | Lab 5: RaiderBot |
2 | Exam 1 review | |||
3 | Midterm exam | Closed note/closed book | ||
6 | 1 | Note 8: C++ with Class | Stroustrup Ch. 4 through 4.3; also 4.5, 4.5.1 | Lab 6: Hunt the Wumpus |
2 | Note 8, continued | |||
3 | Note 8, continued | Start Homework 2 - points added to midterm; due Apr. 22 | ||
Spring break! | ||||
7 | 1 | Note 8: C++ with Class, continued |
Lab 6, continued Demonstrate core game by end of lab |
|
2 | Note 9: Templates | Stroustrup 6-6.2, 6.2.2, 6.2.3 | ||
3 | Note 9, continued | |||
8 | 1 | Note 10: Overloading/copy/move, STL, strings | Stroustrup ch. 5, with special attention to 5-5.2.2 and 5.4.4 | Lab 7: ed |
2 | Note 11: Streams, file processing | Stroustrup Ch. 10 | ||
3 | Note 12: Containers, algorithm, utilities | Stroustrup Ch. 9, 11, 12 | ||
9 | 1 | Note 13: C | Start homework 3 | Lab 8 |
2 | Note 13, Note 14: structs, unions, assembly | |||
3 | Note 14 | |||
10 | 1 | Note 15: Memory Note 16: Types |
SmashingMagazine: intro to type systems |
Lab 9
Due May 18 at 11:59 p.m. - no late solutions |
2 | Note 17: Ruby Blocks | |||
3 | Review | |||
11 | Final Exam: you may have a 2-sidded, 8.5" by 11" page of handwritten notes |