Computer Science 115 - Object-Oriented Design

                                                                       Course Outline
                                                                  sadaouis@uregina.ca

 Have a nice semester!

 

 

Labs:

CS115 Lab

 

 

 

Instructor:

Dr. Samira Sadaoui

Office: CW308.14

 

 

 

Office Hours:

Monday 9:30am to12:30pm  or by appointment

 

 

 

 

Required Textbook:

Problem Solving, Abstraction, and Design using C++
by Frank L. Friedman, Elliot B. Koffman

Optional Textbook:

C++ How to Program
by Harvey M. Deitel, Paul J. Deitel

 

 

 

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.