CS333, Summer 2015

CS333 Modules

Outline
Policies
Grades
Library
Search
FAQ
Offline
1 Part I. Coding in C++
1.1 Basics
1.1.1 Primitive Data Types and Assignments
Activities
  1. lecture: Course Orientation & Intro (05/19/2015, 07:00PM)

  2. lab: Account Setup (Due: 05/20/2015)

  3. unix: Logging In

  4. reading: Chapters 1, "An Overview...", and 2, "Basic Elements of C++"

  5. slides: Straight-Line Computation in C++

  6. quiz: Self-test (ungraded)

1.1.2 I/O
1.1.3 Control Flow
Activities
  1. reading: Chapters 4 and 5, "Control Structures"

  2. slides: Operators

  3. quiz: Self-test (ungraded)

  4. asst: Assignment: Control Flow

1.2 Function Calls and Parameter Passing
1.3 Strings
Activities
  1. reading: Chapter 7, "User-Defined Simple Data Types, ..."

  2. slides: The std::string Class

  3. quiz: Self-test (ungraded)

  4. lab: Lab: I/O, Control Flow, and Strings

1.4 Structuring Data
1.4.1 Basic Arrays
Activities
  1. reading: Chapter 8, "Arrays and Strings"

  2. slides: Basic Arrays

  3. quiz: Self-test (ungraded)

1.4.2 Records (structs)
Activities
  1. reading: Chapter 9, "Records (structs)"

  2. slides: Structured Data

  3. asst: Structs

1.5 End of Part I
Activities
  1. asst: All assignments from Part I are due by the end of the day (06/12/2015)

  2. exam: Exam 1 - available on Blackboard in "Exams" section (06/13/2015 - 06/14/2015)

2 Part II. Programming in C++
2.1 Overview
2.2 The Structure of a C++ Program
2.3 Testing I
2.4 Member Functions
Activities
  1. reading: Chapter 10, "Classes"

  2. slides: Function Members

  3. slides: Constructors

  4. asst: Member Functions

2.5 Design I: Top-Down Design
Activities
  1. slides: Stepwise Refinement

  2. asst: Stepwise Refinement (part 1)

  3. asst: Stepwise Refinement (part 2) - refer to the message from the autograder on part 1

  4. project: Project: Top-Down Design (07/02/2015)

2.6 Filling & Searching Arrays
Activities
  1. reading: Chapter 12, "Pointers, Classes, ...", through "Shallow versus Deep Copy and Pointers"

  2. slides: Pointers and References

  3. reading: Chapter 16, "Sorting, Searching, ..."

  4. slides: Patterns: Working with Arrays

  5. slides: Working with Ordered Data

  6. unix: Basic Unix Commands

  7. asst: Arrays

2.7 Design II: Abstract Data Types
Activities
  1. reading: Chapter 10, "Data Abstraction ..." through "Information Hiding""

  2. slides: Information Hiding and ADTs

2.8 Programming III: Classes & ADTS
Activities
  1. reading: Chapter 10, (remainder)

  2. slides: Encapsulation

  3. reading: Chapter 12, "Pointers, Classes, ...", sections "Shallow versus Deep Copy" through "Classes and Pointers: Some Peculiarities"

  4. slides: Default and Copy Constructors

  5. asst: Working with ADTs

  6. project: Project: ADT Interfaces (07/09/2015)

  7. slides: Common Modifications of Class Members

  8. lecture: Project: ADT Discussion (TBD)

  9. project: Project: Implementation (08/06/2015)

2.9 End of Part II
Activities
  1. asst: All assignments from Part II are due by the end of the day (07/11/2015)

  2. exam: Exam 2 (07/12/2015 - 07/13/2015)

3 Part III. Programming in C++ (continued)
3.1 Debugging I: Reproducing Failures
3.2 Testing II: Scaffolding
3.3 Programming IV: Overloading
Activities
  1. reading: Chapter 13, "Overloading and Templates"

  2. slides: Operator Overloading

  3. slides: Copying Data

  4. asst: Operator Overloading

3.4 Programming V: Linked Lists
Activities
  1. reading: Chapter 17, "Linked Lists"

  2. slides: Linked Lists

  3. asst: Linked Lists

3.5 Testing III
3.6 Programming VI: Recursion
Activities
  1. reading: Chapter 15, "Recursion"

  2. slides: Recursion

  3. slides: Trees

3.7 Debugging II: Debugging Tools
3.8 Design III: Class Designer's Checklist
3.9 End of Part III
Activities
  1. asst: All assignments from Part III are due by the end of the day (08/06/2015)

  2. exam: Exam 3 (08/07/2015 - 08/08/2015)

4 Special Dates
Activities
  1. event: Classes begin (05/18/2015)

  2. event: Last day to withdraw (06/25/2015)

  3. event: Last day of classes (08/07/2015)

5 Supplemental Materials

Symbol Key
conference Conference
slides Slides & Lecture Notes
text Text
exam Exam
lab Lab Assignment
asst Assignment
project Project
cs252 CS252 (Unix) Assignment
All times in this schedule are given in Eastern Time.