Object-Oriented Programming

2021/2022

Prerequisite/Recommended prerequisite for participation in the module

The module builds on the knowledge gained in the modules Programming, and Algorithms and Data Structures.

Content, progress and pedagogy of the module

Disclaimer.
This is an English translation of the module. In case of discrepancy between the translation and the Danish version, the Danish version of the module is valid.

PURPOSE
That the student learns the essential concepts and structuring mechanisms within object-oriented programming languages ​​and acquires skills in programming in a language within this paradigm.

REASONS
Object-oriented programming is a dominant programming paradigm in software development.

Learning objectives

Knowledge

The student must gain knowledge of concepts within the object-oriented programming paradigm and architecture, including a selection of the following:

  • concepts and concept formation in object-oriented programming
  • classes, methods, interfaces, abstract classes and generic variants
  • scope rules and visibility
  • instance and class members
  • inheritance
  • exceptions
  • polymorphism
  • encapsulation and abstraction
  • standard library object-oriented design, architecture and principles
  • design patterns
  • specialization, implementation and delegation
  • structured test
  • documentation

Skills

  • Construct programs that demonstrate the object-oriented principles of design and architecture covered in the course
  • apply the concepts of classes, interfaces, objects, methods and polymorphism
  • reason about program design and design patterns, and explain contexts in an object-oriented program
  • prepare systematic testing of an object-oriented program
  • apply correct terminology

Competences

  • Design, document and test a large object-oriented program, and use the architectural concepts used in the course
  • analyze and discuss a program based on object-oriented design principles and concepts
  • define and discuss key concepts in object-oriented programming

Type of instruction

The teaching is organized in accordance with the general teaching methods for the education, cf. section 17

Extent and expected workload

The student is expected to spend 27.5 hours per ECTS, which for this activity means 137.5 hours.

Exam

Exams

Name of examObject-Oriented Programming
Type of exam
Written or oral exam
ECTS5
Assessment7-point grading scale
Type of gradingInternal examination
Criteria of assessmentThe criteria of assessment are stated in the Examination Policies and Procedures

Additional information

Contact: Study Board for Computer Science via cs-sn@cs.aau.dk or 9940 8854

Facts about the module

Danish titleObjektorienteret programmering
Module codeDSNSWCB311
Module typeCourse
Duration1 semester
SemesterAutumn
ECTS5
Language of instructionDanish
Empty-place SchemeYes
Location of the lectureCampus Copenhagen
Responsible for the module

Organisation

Study BoardStudy Board of Computer Science
DepartmentDepartment of Computer Science
FacultyTechnical Faculty of IT and Design