FSU Seal - 1851 Course Organizer
COP 3330 Object Oriented Programming in C++
Fall Semester 2015
Root View: Course Components
Syllabus The course syllabus establishes course policies on grading, attendance, and exams. The syllabus should be read in detail at beginning semester.
Lectures This is the main knowledge resource for the course. Lectures are in the form of a slide show with an accompanying narrative. (Click "Narrative on" to see the narrative. Click "Frames[Windows]" to toggle between displaying the narrative in a separate frame or a separate resizable window.) Please report bugs/corrections in the appropriate Blackboard discussion forum. Note: The lecture notes are undergoing revision during the semester.
Calendar The course calendar: coverage, assignments, lecture notes all released here.
Assignments Assignments are intended to be total learning experiences, not merely exercises in programming. The assignment documents in particular are used to elaborate on topics and introduce new ones. The content of assignments is of equal importance with the lecture notes. Assignments will be released through the calendar. Note that assignment deadlines will be enforced and that successful completion of most assignments requires starting at least two weeks in advance of the deadline. Assignments will be assessed using the policy described here. We expect polished, thoughtfully prepared work and will assess accordingly. Note that a work log is expected for each programming assignment.
Blackboard The FSU/Blackboard Portal, where you will find this course. The course site is the main communication resource for the class. Here you can get help, talk to other students, retrieve your grades, and generally keep up with course news and announcements.
Students helping students Policy on students helping students. PLEASE NOTE: students may help other students in a Blackboard forum or a designated classroom. Any other form of help, whether using email or an external facility such as "slack", is a violation of the code of conduct. READ THE DOCUMENT && (FOLLOW THE RULES || FACE THE CONSEQUENCES).
Office Hours Instructor office hours and contact information
LIB
The course code distribution library LIB = /home/courses/cop3330p/LIB/
Testing Environment Code submitted for assignments will be built and tested on linprog using clang++ with all warning flags set and the ISO-11 standard library.
Code Stds A C++ coding style guide - required for this course.
Extras: Miscellaneous Resources and References
SSH The version of ssh software that FSU pays for and recommends. See SSH, The Secure Shell: The Definitive Guide, Second Edition (O'Reilly) for more info on SSH.
FAQ Frequently Asked Questions harvested from discussion boards
Make1
Make2
Two tutorials on the make utility and makefiles
Valgrind Valgrind is an instrumentation framework for building dynamic analysis tools. There are Valgrind tools that can automatically detect many memory management and threading bugs, and profile your programs in detail. You can also use Valgrind to build new tools.
C++ Ref A resource to look up C and C++ libraries
Unix/Emacs Hints Lacher's Unix and Emacs hints to get started
Princeton
Stanford
More Emacs help info - from various sources.
Email Very brief reminders on setting up and checking CS Email.
g++ The gnu compiler manual, maintained by gnu.org.
clang The clang compiler manual, maintained by clang.org.
Temporal View: Course Calendar
Week Coverage Deliverable
# Dates            Lecture Notes Chapters Text Chapters Assignment Quiz/Exam Due Date
1 8/24 - 8/30 0: Introduction
1: C/C++ Basics
Review 1, 2, 3, 4, 5
Stroustrup on C++11
Assignment 0: Create Portfolio
Register & Sign Up For Exams with ODL
Project 0: The Programming Environment (self-eval)
  8/30
9/4 [Fri]
2 8/31 - 9/6 2: C/C++ Control Flow
3: C/C++ Functions
Review 1, 2, 3, 4, 5
Is Technology Destroying Jobs?
Project 1: Stats
Stats.mp4   Stats.rt

Quiz 1
9/13
9/13
3 9/7 - 9/13 4: C++ Classes 1   Classes1.mp4   Classes1.rt
5: C/C++ Pointers   Pointers.mp4   Pointers.rt
Study 9
Review 6, 7
Project 2: The Product Class
Product.mp4   Product.rt

9/20
4 9/14 - 9/20 6: C++ Classes 2   Classes2-1.mp4   Classes2-1.rt   Classes2-2.mp4
7: C-Strings & String Objects
Study 10, 11
Study F, 18, 22.8-10
  Practice Exam 1
9/20
5 9/21 - 9/27 Exam 1 Covers Weeks 1 - 4 Exam 1 9/27
6 9/28 - 10/4 8: Bit Vectors   BitVectors.mp4   BitVectors.rt
9: C++ Classes 3   Classes3.mp4   Classes3.rt
Study 22.4-5
Study 12
Project 3: UIntSet
  10/11
7 10/5 - 10/11 10: C++ Classes 4   Classes4.mp4   Classes4.rt Study 13 Project 4: SunPass Vehicles   Verbose.mp4   Verbose.rt   10/18
8 10/12 - 10/18 10: C++ Classes 4   Classes4.mp4   Classes4.rt Study 13 Project 5: SunPass Tracker   SunPass.mp4   SunPass.rt   10/25
9 10/19 - 10/25 11: I/O   IO.mp4   IO.rt Study 8, 15, 17    
10 10/26 - 11/1 12: C++ Templates Study 14 Project 6: Stats Templates Practice Exam 2
11/1
11 11/2 - 11/8 Exam 2 Covers Weeks 1 - 10 Exam 2 11/8
12 11/9 - 11/15 13: Introduction to Data Structures   ADTs.mp4
Study 20 Project 7: Stack
  11/22
13 11/16 - 11/22 14: Introduction to fsu::List   ADTs.rt Study 20 Project 8: Queue   12/6
14 11/23 - 11/29 Thanksgiving Week
15 11/30 - 12/6 15: Linked List Programming Study 20 Practice Final Exam closes Friday 12/4
16 12/7 - 12/13 Final Exam begins Saturday! Covers Weeks 1 - 15 Final Exam 12/11 [Fri]
Ω 12/14 - 12/15 Final grades calculated and turned in to registrar