CSC2402 Object-Oriented Programming in C++

Subject Cat-nbr Class Term Mode Description Units Campus
CSC 2402 96186 3, 2009 EXT Object-Oriented Programming in C++ 1.00 Toowoomba

Academic group: FOSCI
Academic org: FOS003
Student contribution band: 2
ASCED code: 020103


Contents



STAFFING

Examiner: Jamie Shield
Moderator: Richard Watson



REQUISITES

Pre-requisite: CSC1401 or USQIT16 or Students must be enrolled in one of the following Programs: MPIT or GDGS or GCEN or GDET or METC



RATIONALE

Object-oriented software development has become a standard methodology throughout the software engineering discipline. Therefore, a solid grasp of object-oriented programming is essential for any information technology specialist. While there are a variety of object-oriented programming languages available, C++ is one of the most widely used and is therefore the focus of this course.




SYNOPSIS

This course extends the student's basic procedural design and programming knowledge into the object-oriented paradigm. The student will be expected to learn and apply the basic concepts of object-oriented design and programming, i.e. abstraction, inheritance, and polymorphism, in the context of the C++ language. Key software engineering principles such as decomposition and component re-use will also be emphasised.




OBJECTIVES

On completion of this course students will be able to:

1.
employ the additional features of C++ compared with C (all assessments);
2.
identify and design suitable classes and class hierarchies and code robust class implementations in C++ (all assessments);
3.
design and develop C++ programs using classes and class libraries (all assessments);
4.
apply the principles of information hiding using C++ facilities for private and protected class attributes (all assessments);
5.
employ C++ facilities for dynamic storage (all assessments);
6.
employ C++ input/output facilities including sequential and random access files (all assessments);
7.
employ C++ facilities such as operator overloading, templates, inheritance, and dynamic binding to promote code re-use (all assessments);
8.
program using the C++ Standard Template Library (STL) at an intermediate level (all assessments);
9.
justify design decisions and explain the operation of C++ programs developed by the student (all assessments).



TOPICS


Description Weighting (%)
1. C++ differences from C, iostreams, strings, reference arguments
5.00
2. Classes, Constructors, Destructors
15.00
3. Function and Operator Overloading
8.00
4. Programming with multiple source files and namespaces
5.00
5. Templates
5.00
6. Dynamic Storage
8.00
7. Pointers, Iterators, and Functors
5.00
8. File handling
8.00
9. Inheritance
8.00
10. Polymorphism and Dynamic Binding
8.00
11. Using the Standard Template Library
15.00
12. Exception Handling
5.00
13. Casts and Run-Time Type Identification
5.00


TEXT and MATERIALS required to be PURCHASED or accessed

ALL textbooks and materials are available for purchase from USQ BOOKSHOP (unless otherwise stated). Orders may be placed via secure internet, free fax 1800642453, phone 07 46312742 (within Australia), or mail. Overseas students should fax +61 7 46311743, or phone +61 7 46312742. For costs, further details, and internet ordering, use the 'Textbook Search' facility at http://bookshop.usq.edu.au click 'Semester', then enter your 'Course Code' (no spaces).

The student must have access to a standard C++ compiler. The only supported compilers are the Linux g++ compiler and its equivalent running under Cygwin on Windows. The Cygwin software is available from http://www.cygwin.com/, and is also available on the Semester 3 Transmodal CD-ROM (supplied in study package).

Stroustrup, Bjarne 2000, The C++ programming language, 3rd edn, Addison Wesley, Reading, Mass.
(The student must have access to a textbook or manual that provides full details of the C++ programming language. Several are available for free download from the Internet. Because the course materials reference the following text, it is strongly recommended that students access this: (Special edition is also acceptable. Do NOT purchase old copies of the second edition - the third edition is completely rewritten.))




REFERENCE MATERIALS

Reference materials are materials that, if accessed by students, may improve their knowledge and understanding of the material in the course and enrich their learning experience.

Eckel, B 2000, Thinking in C++ Volume 1 - Introduction to Standard C++, 2nd edn, Prentice Hall, Upper Saddle River, New Jersey.

Johnsonbaugh, R & Kalin, M 2000, Object-oriented programming in C++, 2nd edn, Prentice-Hall, Upper Saddle River, New Jersey.

Meyer, B 1997, Object-oriented software construction, 2nd edn, Prentice Hall, Upper Saddle River, New Jersey.




STUDENT WORKLOAD REQUIREMENTS

ACTIVITY HOURS
Assessments 75.00
Directed Study 30.00
Private Study 60.00



ASSESSMENT DETAILS

Description Marks out of Wtg(%) Due date Notes
ASSIGNMENT 1 100.00 30.00 02 Dec 2009 (see note 1)
ASSIGNMENT 2 100.00 35.00 13 Jan 2010 (see note 2)
ASSIGNMENT 3 100.00 35.00 27 Jan 2010 (see note 3)
NOTES
1.
The assignment is due 9am Australian Eastern Standard Time (AEST). The deadline date is Wednesday of Week 3.
2.
The assignment is due 9am Australian Eastern Standard Time (AEST). The deadline date is Wednesday of Week 9.
3.
The assignment is due 9am Australian Eastern Standard Time (AEST). The deadline date is Wednesday of Week 11.


IMPORTANT ASSESSMENT INFORMATION

  1. Attendance requirements:
    There are no attendance requirements for this course. However, it is the students' responsibility to study all material provided to them or required to be accessed by them to maximise their chance of meeting the objectives of the course and to be informed of course-related activities and administration.
  2. Requirements for students to complete each assessment item satisfactorily:
    To satisfactorily complete an assessment item a student must achieve at least 50% of the marks. Students do not have to satisfactorily complete each assessment item to be awarded a passing grade in this course. Refer to Statement 4 below for the requirements to receive a passing grade in this course.
  3. Penalties for late submission of required work:
    If students submit assignments after the due date without (prior) approval of the examiner then a penalty of 5% of the total marks gained by the student for the assignment may apply for each working day late up to ten working days at which time a mark of zero may be recorded. No assignments will be accepted after model answers have been posted.
  4. Requirements for student to be awarded a passing grade in the course:
    To be assured of receiving a passing grade a student must achieve at least 50% of the total weighted marks available for the course.
  5. Method used to combine assessment results to attain final grade:
    The final grades for students will be assigned on the basis of the aggregate of the marks obtained for each of the assessment items in the course weighted as in the Assessment Details.
  6. Examination information:
    There is no examination in this course.
  7. Examination period when Deferred/Supplementary examinations will be held:
    As there are no examinations in this course, there will be no deferred or supplementary examinations.
  8. University Regulations:
    Students should read USQ Regulations 5.1 Definitions, 5.6. Assessment, and 5.10 Academic Misconduct for further information and to avoid actions which might contravene University Regulations. These regulations can be found at the URL http://www.usq.edu.au/corporateservices/calendar/part5.htm or in the current USQ Handbook.

ASSESSMENT NOTES

9. All assignments must be submitted electronically through the USQStudyDesk. Assignment submission will not be accepted in any other form or by any other means without prior approval.
10. Students must retain a copy of each item submitted for assessment. If requested, students will be required to provide a copy of assignments submitted for assessment purposes. Such copies should be despatched to USQ within 24 hours of receipt of a request to do so.
11. Students who, for medical, family/personal, or employment-related reasons, are unable to complete an assignment may apply to defer an assessment in a course. Such a request must be accompanied by appropriate supporting documentation. The student will be assigned the following grade: IDM (Incomplete Deferred Make-up).
12. Students are responsible for authenticating submitted assignments. This will involve gathering evidence that the submitted assessment is the student's own work.The evidence will at least include a journal of work, and pre-submission seven days prior and two days prior to the assignment deadline. Lack of authentication will be considered plagiarism.

OTHER REQUIREMENTS

  1. Students will require access to an appropriate computer either via the student's own arrangements or a USQ study centre. Students will require access to e-mail and have internet access to UConnect for this course.


This version produced 19 Nov 2009.