Object-Oriented Programming
2015-2016 - IMT1082 - 10 ECTS

On the basis of

IMT1031 - Fundamental Programming

Expected learning outcomes

Knowledge:

  • Read and explain more advanced C++ syntax.
  • Explain and use object-oriented approach / thinking.
  • Find an suitable/appropriate data structure for moderate big computer program.
  • Explain the use of a small programming library (toolbox). 
  • Develop an application (as project work) consisting of a number of different files.
  • Understanding the quality aspects of development and maintenance of software.

Skills:

  • Understand and use more advanced C++ syntax.
  • Solve programming tasks with object-orientation approach/thinking.
  • Using and mastering a programming library.
  • Choose, create and manage more sophisticated data structures, primarily consisting of lists and arrays/tables.
  • Master tools for version control, code analysis and testing.

General Competence:

  • Cooperate with other people in a project.
  • Analyze, plan and implement a larger work (project).
  • Dealing with and adhere to deadlines.

Topic(s)

Principles for object-orientation
Introduction to language elements as:
- Classes and objects (repetition)
- Overloading
- Inheritance
- Pointers
- Dynamic allocation
- Lists
- Virtual functions and late binding
Bigger programs (application) consisting of multi-files.
Tools for version control, code analysis and testing.

Teaching Methods

Lectures
Mandatory assignments
Exercises
Project work

Form(s) of Assessment

Written exam, 4 hours

Grading Scale

Alphabetical Scale, A(best) – F (fail)

External/internal examiner

Graded by course instructor and examiner.

Re-sit examination

Re-sit August 2016

Examination support

All printed and hand-written support material is allowed.

Coursework Requirements

2 of 3 mandatory assignments and project work must be approved by student assistant. Clearly inadequate work, not independently own work or deadline that is not complied is considered as undelivered.

The mandatory assignments must be submitted before the student can join a group and start the project work. It requires active participation in the project to get it approved. Group participants must sign a paper dealing that all students have been active/participating, and each one can be extracted for an oral exam to get the project approved.

Teaching Materials

Lafore, Robert. (2002). Object-Oriented Programming in C++. Indianapolis, IN: SAMS
Faglærer. Kompendium. Gjøvik: HiG