University of Denver Home Page | DU Department of Computer Science Home Page | Home Page for Catherine Durso |
Instructor:
Catherine Durso |
GTA:
Seif Azghandi |
In this course we continue your study of of programming, with emphasis on object oriented programming in the language C++. This language is based on C, but has additional capabilities facilitating object oriented programming. We will cover classes, including inheritance and polymorphism, the concept of abstract data types, with specific examples from the standard library, file I/O, and additional topics as interest prompts and time permits.
You will learn design skills suited to complex programs while improving fundamental programming and debugging skills. You will continue to improve your communication skills, including documenting your programs, listening to and speaking about technical material, and reading texts to learn information independently.
This is a demanding course that requires significant time and energy. It provides a basis for writing large-scale programs. In practice, some engineers write these large-scale programs, while some delegate the writing to specialists. Either situation requires familiarity with object oriented programming.
The lecture is held in CMK 309 at 2:00 on Mondays, Wednesdays and Fridays.
If you are experienced in downloading information from the Internet, you may download the software directly. For Cygwin, include the package containing the gcc-g++ compilers. For Gvim, use the 'typical' installation.
You will be evaluated based on weekly quizzes, homework assignments, programming projects, a midterm exam, and a final exam.
The quizzes will be given during the first five minutes of each Wednesday's class. They will be a quick closed book check on your awareness of the material covered the previous week.
Homework will be assigned and due approximately every two weeks. Please try the homework as soon as it is assigned. You'll be given opportunities in class to ask questions about it.
Programming projects will be given about 3 times during the quarter.
There will be two exams in this course. The midterm exam will, tentatively, be given on Wednesday, February 14, in class. The cumulative final exam will be given on Wednesday, March 14, from 1:00 to 2:50 p.m. in our regular classroom. This is the date determined by the registrar (see DU 2007 Winter Exam Schedule). Your enrollment in this class is a commitment to be available on that date.
Your attendance and class participation will be taken into account only in borderline cases.
The contributions of each type of work to your final grade are as follows:
evaluation type | total percent contribution |
---|---|
Quizzes | 5% |
Homework | 15% |
Projects | 30% |
Midterm | 25% |
Final Exam | 25% |
Grade cut-offs are as follows: A (90 to 100 points), B (78 to 89 points), C (66 to 77 points), D (51 to 65), F (50 and less). Further curving may only improve your grade.
Late Policy: A 5/100 marks deduction penalty will be applied every 24 hours after the due date. In special circumstances the penalty may be revoked, but I reserve the right to do so.
When you turn in work in this course, you are implicitly agreeing that you have followed the rules for collaboration set forth for that assignment. You should not view in any way another person's assignment, nor should you possess electronic copies or hard copies of another person's assignment before that assignment has been graded and returned.
If you are stuck with a problem, you are strongly encouraged to seek help of the Instructor or the Teaching Assistant. Discussion of homework problems with your colleagues (other than your teammates when working in teams) should be limited to what the problem requires and not extend to how to solve it. You may not use or copy all or part of someone else's work. When using material from other sources or publications (including the Internet), you must understand, acknowledge and include a reference to them. Failure to do so will affect your grade adversely. Please make sure you have read and understood the information available in the following web page:DU Honor Code
A total of about 5 homework assignments will be handed out. These assignments are individual work and you must not consult with any of your colleagues, excepting the Instructor and the Teaching Assistant. You are encouraged to type your solutions. Handwriting is accepted as long as I find it to be readable, understandable and organized.
Homework assignments are due before midnight on the date specified in the assignment hand out (and course calendar). If you submit an assignment electronically, please use .TXT, .PDF or .DOC format. Email the attached file to 157x"AT"cs"DOT"du"DOT"edu. The email should mention the homework number in the subject line. The file name should include your name and the homework number. For example, a Word file containing Clive Owen's first homework should be called C_Owen_hw1.doc. Code for assigned programs should be submitted electronically, even if you choose to hand in solutions to other questions on paper. Email the code file(s) as attached files to comp157x"AT"cs"DOT"du"DOT"edu.
Approximately three projects will be assigned. You may be required to work in pairs or teams on some. You might be asked to present your work in class. A project involves the design and a partial or total implementation of your solution to a given computational requirement. Projects are due at the time and date specified in the assignment hand out. All projects must be submitted electronically. Email the code file(s) as attached files to comp157x"AT"cs"DOT"du"DOT"edu. The email should mention the project number in the subject line. The main file name should include your name and the project number. A hard copy of your code will also be required.
Your program must work correctly to receive credit. A program which does not compile will receive little credit. A program which works partially will receive partial credit. Your score improves if you attach notes documenting the incompleteness or bugs (include details of the circumstances under which they occur), since this shows the degree to which you tested your code.
Your program should be formatted logically, and should be easy to read. Specific projects will require use of structures available in C++.Comment your code well - write comments that would be useful to someone who would have to debug, maintain or enhance your code. The quality of your comments is included in your grade.
The calendar below contains links to homework assignments, programming projects, examples from class, and important dates for you to keep in mind.
The cumulative final exam will be given on Wednesday, March 14, from 1:00-2:50pm