COP 3330
Object Oriented Programming in C++
Summer 2009 Syllabus
Instructor Information
Position |
Name |
E-mail |
Office |
Office hours |
Course Instructor |
Matthew Small |
small@cs.fsu.edu |
Love 267 |
T/TH 2-3PM |
Class Schedule
Lecture
TR 12:30 - 1:45 PM, LOV 301
Recitation
We will use the recitation times as needed for extra help with programming assignments. An in-class
announcement will be made in advance of a recitation. If no such announcement is made, there will
be no recitation. The official reciation times are
listed below.
Section |
Room |
Day |
Time |
Instructor |
1 |
MCH 315A |
Tues |
9:30 - 10:45 AM |
TBA |
2 |
MCH 315A |
Thurs |
3:35 - 4:50 PM |
TBA |
Course Requirements:
Prerequisite Course
- A C- or better in COP 3014, or an equivalent introductory programming
course
Course Website:
Textbook (non-required):
- Absolute C++, 3rd ed., Walter Savitch., Addison-Wesley
ISBN: 0321468937
Course Objectives:
Upon completion of the course, the student will:
-
Understand the Object Oriented Programming concept and be able to discuss
the differences between procedural and object oriented languages.
- Demonstrate the ability to create and use classes within the C++
programming language
- Demonstrate the ability to create, compile, and execute programs
in multiple compiler environments (typically Microsoft Visual C++ and the
GNU g++ compiler in unix) using the Object-Oriented design model.
- Be able to build C++ classes using appropriate encapsulation and
design principles
-
Be able to program using important C++ techniques, such as composition of
objects, operator overloads, dynamic memory allocation, inheritance and
polymorphism, file I/O, exception handling, templates, bitwise operations,
preprocessor directives, and basic data structures.
Grading Policy:
The final course grade will be computed as follows:
Programs / Homeworks |
40 % |
Midterm Exam |
20 % |
Final Exam |
30 % |
Attendance/Quizzes |
10 % |
In addition to the scale listed above, in order to earn a C- or better
in the course, a student is required to achieve a test average of
C- or better. If the test average is below this level, the highest
possible course grade is a D.
Letter Grade Scale:
Letter | Numerical Average |
A | 92.00 - 100 |
A- | 90.00 - 91.99 |
B+ | 88.00 - 89.99 |
B | 82.00 - 87.99 |
B- | 80.00 - 81.99 |
C+ | 78.00 - 79.99 |
C | 72.00 - 77.99 |
C- | 69.00 - 71.99 |
D | 62.00 - 68.99 |
D- | 60.00 - 61.99 |
F | 0.00 - 59.99 |
Tests:
There will be a midterm and a final exam. On-campus students
will be required to bring and show your Student ID on
test days. The final exam will be cumulative (sigh).
Test Dates: (tentative)
Midterm Exam |
Tuesday, June 23 |
Final Exam |
TBA |
Attendance / Quizzes
Students are required to attend lecture. Roll will be taken periodically and students not present will be penalized. A student
may send an email to the instructor prior to a lecture if he/she cannot attend and not be penalized for the absence. A student
may send such an email twice in the semester. Periodic quizzes will be given to help students gauge their progress and will
usually be announced a lecture in advance. Quizzes cannot be made up and will count as zero if not taken. Students who send an
email in anticipation of missing a lecture to the instructor before a quiz for that lecture is announced will not be penalized for
up to one quiz.
Programming Assignments
- There will be a variety of homeworks and programming projects
assigned. Some will be small and easy to complete in one sitting.
Others will be larger programming projects. Assignment specifications will be
posted on the web page.
- Turn in all assignments on time! Late assignments
will be accepted one day after the due date, with the deduction of a
letter grade (10%). Assignments more than a day late will not be
accepted.
- Compiling -- Programs that do not compile are very tedious to
grade, and they show a lack of testing, which is a large part of
programming. There will be an automatic 5% point penalty for each compile
error in a student's code that has to be fixed in the grading process.
(This means that program submissions with compile errors will likely earn
very little, if any, credit). Make sure your code compiles before you
submit it!!!
Web References:
The course web page is your friend -- check it frequently! It will be
continually updated with essential course materials, such as assignments,
examples, and notes outlines. It will also include other helpful
supplements, such as instructions for using the compilers, a FAQ
(Frequently Asked Questions) page, suggested exercises, and other useful
help materials. It is your responsibility to check the web page often for
posted materials.
Miscellaneous Policies:
- A student will be allowed to make up a missed test if he or she has
a notice of illness from the Student Heath Center or family physician.
Any other excuses that are not medical or emergency related will be at
the discretion of the instructor, and must be approved in advance.
- Students in the class should have a computer account from the Computer
Science Department (sign up for one if you don't already have one), and
this can and should be used to store project files and access one of the
compilers used in the course.
- Please turn OFF all cellular phones, beepers, etc. in the classroom.
- Please do not open your laptop computers during lecture, notes are
provided on the website and printouts will happily be provided for
students upon request. If you need your laptop for some reason, come see
the instructor to discuss it.
Academic Honor Code:
It it your responsibility to read, understand, and conform to the
Academic Honor Code
as set forth in the FSU General Bulletin and the Student
Handbook. In addition to this information, please be aware of the
following:
- Students are expected to do their own work on any classwork or
test submitted for a grade (unless designated as a group assignment).
- It is NOT appropriate to work on assignments with other students or
to give or receive solutions to or from anyone before an assignment
is due and handed in (by all parties).
- Discussing solutions and techniques on assignments with other
students after the assignment has been graded and handed back
is okay, and encouraged.
- When you turn in work with your name on it, you are representing that
work as your own. If your submission matches that of
another student, this is considered a violation of the
Academic Honor Code.
- If a group project is given, then names of all group
members would appear on the single program submission. This is
appropriate
- Examples found in the course textbook
may be used in programs, as long as the source is cited. This is
appropriate, as some hand-in assignments may be based on program examples
found in the book or contain other code that is provided to you in the
assignment specification
- A first violation of the honor code will result, at minimum
(but not limited to), a penalty of a 0 grade on the assignment
or test involved, along with a reduced letter grade in the course.
- Any second violation of the honor code will result in an automatic F
in the course, and possible proceedings before the Honor Court.
Accommodation of Disabilities:
Students with disabilities needing needing special
accommodations should register with and provide documentation to the
Student Disability Resource
Center (SDRC), and they should bring a letter from the SDRC to the instructor
indicating what accommodations are needed. Any notice of special
accommodations should be given at least a week in advance.
Students taking exams at the SDRC office are expected to take exams
at the regularly scheduled time. Any exception to this will only
be granted with a valid documented reason and must be approved by the instructor
a week before the exam.
Student Expectations
Come to class, pay attention and participate
Start programming assignments EARLY!
Follow programming methodology taught in class (it helps)
Attend office hours regularly for extra help
Syllabus Change Policy
Except for changes that substantially affect implementation of the evaluation (grading) statement, this syllabus is a guide for the course and is subject to change with advance notice.