Computer
Science 115 - Object-Oriented Design
Course
Outline
sadaouis@uregina.ca
Have a nice
semester!
|
|
|
Labs: |
||
|
|
|
Instructor: |
Office: CW308.14 |
|
|
|
|
Office Hours: |
Monday 9:30am to12:30pm or by appointment |
|
|
|
|
Required Textbook: |
Problem Solving,
Abstraction, and Design using C++ |
|
Optional Textbook: |
C++ How to Program |
|
|
|
|
Grading Scheme: |
Assignments |
20% |
|
Lab |
15% |
|
Midterm Exam |
25% |
|
Final Exam Instructor Discretion |
40% +/-5 |
MainTopics
C++
Overview (chapters 2, 3, 4, 5 and 7):
C++ Program
Structure, C++ Language Constructs, Data Types, Selection and Repetition Statements,
Functions and Top-Down Design.
Arrays
and Structures (chapter 9):
One Dimensional Arrays, Array
Arguments, Searching (linear and binary) and Sorting (selection sort and bubble
sort) Algorithms, Structures and Unions.
ADTs
and Classes (chapter 10; chapter 6 of Deitel):
Object-Oriented Design, Class
Definition and Implementation, Encapsulation and Information Hiding, Public vs Private Access, Classes as Arguments, String Class.
Modeling
Data with Arrays, Structures and Classes (chapter
11; chapters 7, 8 and 11 of Deitel):
Multi-Dimensional Arrays, Arrays of
Structures, Function Templates, Class Templates, Indexed List Class, Stack
Class, Operator Overloading, Friend Functions, Separate Compilation.
Inheritance (appendix E; chapters 9 and 10 of Deitel):
Base Classes and Derived Classes, Single and Multiple
Inheritance, Protected
Members, Overriding, Constructors and Destructors Calls.
Pointers
and Dynamic Data Structures (chapter 13):
Pointers and new operator, Pointer Operations, Pointers to Structures, Heap Management, Linked
Lists Operations, Linked Lists as Class Templates, Stack Class, Queue Class.
Marking Scheme of Assignments
Readability (program
style): 10%
- program easy to read,
- well commented,
- well structured (layout, indentation,
whitespace, etc.)
Compilation
and execution processes: 20%
- program compiles without
errors and warnings,
- performs without run time
errors
Correctness: 70%
- code produces correct
results,
- the output meets the
problem requirements (check for the output format)
Policies
1.
An average of 65% in CS110 is recommended for CS115.
2.
The class web site is:
www.cs.uregina.ca\~sadaouis/CS115/index115.html
3.
Announcements and other relevant information will be
posted on UR Courses.
4.
Lecture notes, assignments and projects will be posted
on UR Courses.
5.
E-mail questions can be directed to your professor at sadaouis@uregina.ca or via UR
Courses.
You should always
use your UR or CS account. If you send messages from other e-mail addresses,
they will be ignored.
Include CS 115
at the beginning of the subject e-mail.
6.
Electronic submission of all assignments through UR
Courses.
The first page of your submission should
indicate your name, student ID, assignment number and e-mail address.
7.
All your C++ programs SHOULD compile with CC (the Sun Compiler) under the server
Hercules.
From the third assignment, you will submit a makefile for
the separate compilation of your software.
8.
LATE assignments will not be accepted without medical
certification. Partial marks will be given for incomplete assignments. Students should start working on the
assignments as soon as they are posted on UR Courses.
9.
For each assignment, the due date and time will be
posted on UR Courses.
It is the responsibility of the students to
make sure that the assignments have been successfully submitted through UR Courses
before the deadline. Make sure that all the necessary files were uploaded.
10. You should not read, copy or
share other students' work. Plagiarism
is NOT acceptable! Please consult the section of the university calendar on Academic
Misconduct and Penalties and Academic Integrity.
11. If you have a complaint about a
marking, please contact the instructor no later than seven days after the mark
have been posted. An enquiry that is more than seven days will not be
processed!
12. The midterm is closed book and will
be held during the regular lecture meeting time in the regular classroom.
13. The final exam is closed book and
will be cumulative, but with more emphasis on material covered after the
midterm.
14. Lecture
attendance is mandatory! Little time will be available to
assist those who have missed several lectures.