Skip to main content

Object-Oriented ProgrammingLaajuus (5 cr)

Code: 5051262

Credits

5 op

Objective

After completing the course the student can:
- explain the different phases and main methods of the development of a software product
- explain the concepts class hierarchy, inheritance, and polymorphism, and utilize these in software development
- discuss the possibilities of parallel programming
- apply exception handling mechanisms
- design, implement and document a simple user interface application.

Content

- object-oriented structures
- error handling with exceptions
- threads
- database connection
- software development process and methods
- UML diagrams

Enrollment

01.12.2023 - 15.01.2024

Timing

15.01.2024 - 30.04.2024

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

Engineering and Business

Campus

Kupittaa Campus

Teaching languages
  • Finnish
  • English
Seats

20 - 40

Degree programmes
  • Degree Programme in Information and Communication Technology
  • Degree Programme in Information and Communications Technology
Teachers
  • Tiina Ferm
Teacher in charge

Tiina Ferm

Groups
  • PTIVIS22H
    Health Technology

Objective

After completing the course the student can:
- explain the different phases and main methods of the development of a software product
- explain the concepts class hierarchy, inheritance, and polymorphism, and utilize these in software development
- discuss the possibilities of parallel programming
- apply exception handling mechanisms
- design, implement and document a simple user interface application.

Content

- object-oriented structures
- error handling with exceptions
- threads
- database connection
- software development process and methods
- UML diagrams

Materials

The content covers chapters 1-5 and 11
Python 3 Object Oriented Programming by Dusty Phillips, ISBN-13: 978-1849511261

Teaching methods

Learning by programming

Completion alternatives

The course can be compensated with an exam

Student workload

reading the material 10* 3 h = 30 h
doing the network exercises 7 * 5 h = 35 h
doing the programming exercises 10 * 7 h = 70 h

total 135 h student work

Content scheduling

The learning is based on doing
- network exercises
- programming exercises
- to support the learning there are weekly introductory lectures on the topic followed with programming exercises



All the classes are programming labs. A student needs to go through the theory before the labs.

Further information

the course uses itslearning as a learning platform

Evaluation scale

H-5

Assessment methods and criteria

Assessment is completely based on exercises. NOTE! exercises returned late are not assessed



- 5 mandatory class programming exercises, assessment pass/fail during the class.  
- 4 quiz, each 5 points
- 4  programming labs,  each 5 points


if all 5 mandatory class exercises are passed ? grade 1
each 10 points from quizzes and labs add 1 grade
If a student fails a mandatory class exercise, points from quizzes and labs are used to compensate it, 10 points compensates one class exercise.

Assessment criteria, fail (0)

missing mandatory accepted class exercises and not enough points to compensate tehm

Assessment criteria, satisfactory (1-2)

all mandatory class exercises done (grade 1) and additional 10 points (grade 2)

Assessment criteria, good (3-4)

all mandatory class exercises done (grade 1) and additional 20 points (grade 3) or 30 (grade 4)

Assessment criteria, excellent (5)

all mandatory class exercises done (grade 1) and additional 40 points (grade 5)

Enrollment

02.12.2022 - 18.01.2023

Timing

01.01.2023 - 30.04.2023

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

Engineering and Business

Campus

Kupittaa Campus

Teaching languages
  • Finnish
  • English
Degree programmes
  • Degree Programme in Information and Communication Technology
  • Degree Programme in Information and Communications Technology
Teachers
  • Tiina Ferm
Teacher in charge

Tiina Ferm

Groups
  • PTIVIS21H
    Terveysteknologia

Objective

After completing the course the student can:
- explain the different phases and main methods of the development of a software product
- explain the concepts class hierarchy, inheritance, and polymorphism, and utilize these in software development
- discuss the possibilities of parallel programming
- apply exception handling mechanisms
- design, implement and document a simple user interface application.

Content

- object-oriented structures
- error handling with exceptions
- threads
- database connection
- software development process and methods
- UML diagrams

Materials

The content covers chapters 1-5 and 11
Python 3 Object Oriented Programming by Dusty Phillips, ISBN-13: 978-1849511261

International connections

learning by programming

Completion alternatives

The course can be compensated with an exam Enrol via email by 15.1.2023 and tell which programming language you will use e.g. java, python, C#, ...

Student workload

reading the material 10* 3 h= 30 h
doing the network exercises 10* 3 h= 30 h
doing the programming exercises 10* 4 h= 40 h
project 35 h
total 135 h student work

Content scheduling

The learning is based on doing
- network exercises
- programming exercises
- to support the learning there are weekly introductory lectures on the topic and exercises
- weekly labs for presenting the exercises and getting support before returning the exercises
- programming project work

All the classes are programming labs. A student needs to go through the theory before the labs. Part of the lab exercises is evaluated only if they have been presented in front of the class.

Further information

the course uses itslearning as learning platform

NOTE! The course implemented together with group PTIVIS21S

Evaluation scale

H-5

Assessment methods and criteria

Assessment is completely based on exercises.
- 40% network exercises
- 40% programming exercises NOTE! exercises returned late are not assessed
- 20% programming project


If the number of points is 90% of the total the number of credits is 6cr and the grade is 5.

Assessment criteria, fail (0)

< 40% of assessed exercises

Assessment criteria, satisfactory (1-2)

40-59%

Assessment criteria, good (3-4)

60-79%

Assessment criteria, excellent (5)

>80%

Enrollment

02.12.2021 - 16.01.2022

Timing

01.01.2022 - 30.04.2022

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

Engineering and Business

Teaching languages
  • Finnish
Seats

0 - 40

Degree programmes
  • Degree Programme in Information and Communication Technology
  • Degree Programme in Information and Communications Technology
Teachers
  • Tiina Ferm
Teacher in charge

Tiina Ferm

Groups
  • PTIVIS20H
    Terveysteknologia

Objective

After completing the course the student can:
- explain the different phases and main methods of the development of a software product
- explain the concepts class hierarchy, inheritance, and polymorphism, and utilize these in software development
- discuss the possibilities of parallel programming
- apply exception handling mechanisms
- design, implement and document a simple user interface application.

Content

- object-oriented structures
- error handling with exceptions
- threads
- database connection
- software development process and methods
- UML diagrams

Materials

Programming tools used:

Examples and model answers are presented using Spyder for editing, managing modules and files, executing code in the console, and checking the code style.

Links to recommended reading and exercises:
SoloLearn

This course covers SoloLearn (Android , IOS) Learn Python 3 module Object-Oriented Programming sub modules 1-9

Python.org

Python tutorial chapter 9

Python 3.7.3 documentation

Documentation

w3schools


w3schools topics Python Classes/Objects, Python Inheritance, Python Modules

Recommended literature:
Python 3 Object Oriented Programming by Dusty Phillips, ISBN-13: 978-1849511261


Learning Python: Powerfull Object-Oriented Programing, 5th Edition, by Mark Lutz

Mastering object-oriented Python : grasp the intricacies of object-oriented programming in Python in order to efficiency build powerful real-world applications by Steven F. Lott

International connections

learning by programming

Completion alternatives

The course can be compensated with an exam 18.1.2022 12.15-16.00. Enrol via email by 15.1.2022 and tell which programming language you will use e.g. java, python, C#, ...

Student workload

reading the material 10* 3 h= 30 h
doing the network exercises 10* 3 h= 30 h
doing the programming exercises 10* 4 h= 40 h
project 35 h
total 135 h student work

Content scheduling

The learning is based on doing
- network exercises
- programming exercises
- to support the learning there are weekly introductory videoed lectures on the topic and exercises
- weekly labs for presenting the exercises and getting support prior to returning the exercises
- programming project work

Further information

the course uses itslearning as learning platform

Evaluation scale

H-5

Assessment methods and criteria

Assessment is completely based on exercises.
- 40% network exercises
- 40% programming exercises NOTE! exercises returned late are not assessed
- 20% programming project

Assessment criteria, fail (0)

< 40% of assessed exercises

Assessment criteria, satisfactory (1-2)

40-59%

Assessment criteria, good (3-4)

60-79%

Assessment criteria, excellent (5)

>80%