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
-
PTIVIS22HHealth 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
-
PTIVIS21HTerveysteknologia
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
-
PTIVIS20HTerveysteknologia
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%