SE 2040 - Software Development III

Spring 2018, Hasker

Materials

Final Exam

Schedule

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
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: arrays, pointers Stroustrup 1.8-1.9, Lab 3: Bucket analysis
2 Note 5 continued
3 Quizes 1 & 2
4 1 Note 5 continued Lab 4: Dated
2 Note 6: classes Stroustrup 2.3
3 Note 6, continued Stroustrup 3-3.2
Spring break!
5 1 Linked list in C++, Note 7 Lab 5: Raiding for gold
2 Namespaces, exceptions, assertions Read Stroustrup 3.3-3.5; Quiz - bring a half-page of hand-written notes
3 Exam 1 review
6 1 (tentative) Midterm exam Closed note/closed book Lab 6: Hunt the Wumpus
2 Note 8: C++ with Class Stroustrup Ch. 4 through 4.3
3 More on classes
7 1 Quiz on reading; Note 9: Templates Stroustrup 5-5.4, 5.8 Lab 6, continued
Demonstrate core game by end of lab
2 Note 10: Overloading/copy/move, STL, strings Stroustrup 4.5-4.6, 6, 7.1
3 Note 11: Streams, file processing Stroustrup Ch. 8
8 1 Note 11; Note 12: Containers, algorithm, utilities Stroustrup Ch. 9, 10, 11 Lab 7: trying treis
2 Note 12
3 Note 13: C
9 1 Note 13: C Lab 8: ticketing
2 Note 13, Note 14: structs, unions, assembly
3 Note 14, n14b-memory; Note 15: Types SmashingMagazine: intro to type systems
10 1 Note 15: Types Lab 9: auto lookup
Due 5/20 at 11:59 p.m. - no late solutions
2 Note 16: Ruby Blocks
3 Review