Syllabus

Object-oriented Programming and Design

Objektorienterad programmering och design

Course
DIT954
First cycle
7.5 credits (ECTS)
Disciplinary domain
NA Natural sciences 100%

About the Syllabus

Registration number
GU 2025/4318
Date of entry into force
2026-10-15
Decision date
2025-11-27
Valid from semester
Spring term 2027
Decision maker
Department of Computer Science and Engineering

Grading scale

Four-grade scale, digits

Course modules

Assignments, 1.5 credits
Laboratory work, 3 credits
Written hall exam, 3 credits

Position

The course is mandatory within Computer Science, bachelor´s programme (N1COS).

The course is a also a single-subject course at Gothenburg University.

Main field of study with advanced study

ITDVA Computer Science - G1F First cycle, has less than 60 credits in first-cycle course/s as entry requirements

Entry requirements

  • Successfully completed the course Imperative programming with basic objectorientation, 7,5 credits, or equivalent. 
  • In addition, the student should have completed additional 7,5 credits in programming, for example, Introduction to functional programming.

Content

The course introduces the object-oriented programming paradigm, and a high-level object-oriented programming language with associated platforms and integrated development environments (IDE), with emphasis on object-oriented concepts applied to the creation of programs, and design of software applications.

Programming language concepts and techniques are expanded and deepened: methods, objects, types and polymorphism, inheritance and overriding, error handling, testing, etc.

Design aspects are introduced: common principles for good object-oriented design; naming conventions, handling of dependencies, modular programs, and mutability; design patterns and the MVC model; class and object diagrams.

Objectives

After completion of the course the student should be able to:

Knowledge and Understanding

  • Explain object-oriented concepts such as objects, classes, encapsulation and polymorphism using adequate terminology.
  • Describe and explain object-oriented design principles (e.g., Single responsibility principle, Open-closed principle, etc.)
  • Explain different object-oriented design patterns, including their purpose and effect.

Skills and Abilities

  • Explain and implement basic object-oriented concepts such as classes and objects, primitives and references, methods and methods and constructors, variables and fields, etc.
  • Explain and implement more advanced language mechanisms and techniques, such as error handling, generics, etc.
  • Explain and implement inheritance and parametric types, and associated mechanisms, to achieve polymorphism and code reuse.
  • Identify and implement design principles and design patterns to achieve sound object-oriented design.
  • Design, implement and refactor object-oriented programs for a given domain in a sound manner with respect to correctness, modifiability and reusability.
  • Form a clear and well-structured reasoning text, following basic principles for argumentation and discussion.
  • Communicate object-oriented design orally and in writing, as well as visually by using diagrams (e.g., class diagrams).
  • Identify and apply effective methods supporting inclusive cooperation in group work.

Judgement Ability and Approach

  • Argue for design and implementation choices, in accordance with principles for good object-oriented design and implementation.
  • Evaluate the comprehensibility and modifiability of a program, e.g., using class coupling, class cohesion and method cohesion.
  • Assess the impact of changes in a software design.
  • Reflect over different strategies promoting an inclusive cooperation in group work.

Sustainability labelling

No sustainability labelling.

Form of teaching

Exercises, lectures and computer assignments.

Language of instruction: English and Swedish
The course is given in Swedish but English may occur.

Examination formats

The course is examined by a written hall examination (3 hp), laboratory work (3 hp), and assignments (1.5 hp). The laboratory work are conducted in groups.


If a student who has been failed twice for the same examination element wishes to change examiner before the next examination session, such a request is to be granted unless there are specific reasons to the contrary (Chapter 6 Section 22 HF).

If a student has received a certificate of disability study support from the University of Gothenburg with a recommendation of adapted examination and/or adapted forms of assessment, an examiner may decide, if this is consistent with the course’s intended learning outcomes and provided that no unreasonable resources would be needed, to grant the student adapted examination and/or adapted forms of assessment.

If a course has been discontinued or undergone major changes, the student must be offered at least two examination sessions in addition to ordinary examination sessions. These sessions are to be spread over a period of at least one year but no more than two years after the course has been discontinued/changed. The same applies to placement and internship (VFU) except that this is restricted to only one further examination session.

If a student has been notified that they fulfil the requirements for being a student at Riksidrottsuniversitetet (RIU student), to combine elite sports activities with studies, the examiner is entitled to decide on adaptation of examinations if this is done in accordance with the Local rules regarding RIU students at the University of Gothenburg.

Grades

Sub-courses

  1. Written hall examination, 3 credits
    Grading scale: Pass with distinction (5), Pass with credit (4), Pass (3) and Fail (U)
  2. Laboratory work, 3 credits
    Grading scale: Pass (G) and Fail (U)
  3. Assignments, 1.5 credits
    Grading scale: Pass with distinction (5), Pass with credit (4), Pass (3) and Fail (U)

The grading scale comprises: Pass with distinction (5), Pass with credit (4), Pass (3) and Fail (U).

In order to be awarded the grade Pass (3) for the full course, the student needs to pass all mandatory components. In order to be awarded the grade 4 or 5 for the full course, the student needs to recieve the corresponding grade on all compulsory components.

Course evaluation

The course is evaluated through meetings both during and after the course between teachers and student representatives. Further, an anonymous questionnaire is used to ensure written information. The outcome of the evaluations serves to improve the course by indication which parts could be added, improved, changed or removed.

Other regulations

The course is a joint course together with Chalmers.

The course replaces DIT952 Programming, advanced course, 7,5 hec. The course cannot be included in a degree which contains DIT952. Neither can the course be included in a degree which is based on another degree in which the course DIT952 is included.