Change language: Suomi

Front Page > Current Education > Information Technology (TT) > 2020V > Year 2 > Object Oriented Programming (ITTA0204)

Object Oriented Programming

Structure Type: Study unit
Code: ITTA0204
Curriculum: TT 2020V
Level: Bachelor of Engineering
Year of Study: 2 (2021-2022)
Semester: Spring
Credits: 5 cr
Responsible Teacher: Mäkinen, Seppo
Language of Instruction: Finnish

Courses During the Academic Year 2021-2022

Impl.Group(s)Study TimeTeacher(s)LanguageEnrolment
3004TT2020-2A, TT2020-2B, VY-2-ICAT, VY-2-TJT2021-08-23 – 2021-12-19Timo KankaanpääFinnish2021-08-01 – 2021-09-06
3007TT2020-2C, TT2020-2D2021-08-23 – 2021-12-19Ghodrat Moghadampour, Seppo MäkinenFinnish2021-08-01 – 2021-09-06
3008TT2020V-2A2022-01-01 – 2022-05-01Marko NiemikorpiFinnish2021-12-01 – 2022-01-10

Still need to take the course? See the courses during the academic year 2023-2024.

Learning Outcomes

After the course, the student will know how to routinely develop small object oriented programs, and the students will be able to develop and implement a larger programming project in a team. The student will become familiar with object oriented programming techniques such as classes, methods, inheritance, polymorphism and serialization.

Student's Workload

135 h, which contains 70 h of scheduled contact studies at VAMK and 48 h at UVA.

Prerequisites / Recommended Optional Courses

Introduction to Programming.


Basic skills: Compiling a program and the phases of compiling, byte code and object code, deployment of a program. Classes, constructors, class members, object instantiation, using instance variables and methods. Inheritance. Composite objects. String manipulation. Input and output operations, formatting output. Reading and writing files. Basics of dynamic data structures. Exception handling. Collaboration of objects.
Supplementary skills: Properties of preprocessor. Function overloading and default values of parameters. Method polymorphism, overriding, virtual functions, interfaces/multiple inheritance. ArrayList, HashMap/vector, map. Using existing class hierarchy and interfaces.
Special skills: Abstract classes. Object cloning. Graphical user interface.

Recommended or Required Reading and Other Learning Resources/Tools

Material on the course Web site.

Mode of Delivery / Planned Learning Activities and Teaching Methods

Problem-based learning. Solving practical cases of working life.

Assessment Criteria

Grade 5: The student understands most course concepts, is able to apply them and is capable of developing applications with advanced features.
Grade 3: The student understands a considerable portion of course concepts, is able to apply them and is capable of developing applications with moderate number of functions.
Grade 1: The student understands basic course concepts, is able to apply them and is capable of developing simple applications.

Assessment Methods

Continuous assessment, the grade is based on homework exercises, project works and an examination.