Object-Oriented Programming (5 cr)
Code: 5051262-3002
General information
Enrollment
01.12.2020 - 15.01.2021
Timing
11.01.2021 - 30.04.2021
Number of ECTS credits allocated
5 op
Mode of delivery
Contact teaching
Unit
Engineering and Business
Campus
Kupittaa Campus
Teaching languages
- Finnish
Degree programmes
- Degree Programme in Information and Communication Technology
Teachers
- Tiina Ferm
Groups
-
PTIVIS19HTerveysteknologia
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:
Anaconda Navigator is a portal containing links to programming tools, tutorials and communities.
Examples and model answers are presented using Spyder for editing, managing modules and files, executing code in the console, and checking the code style. Spyder is included in Anaconda Navigator portal.
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.2021 12.15-16.00. Enrol via email 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
- introductory exercises to review basics programming skills (3 weeks)
- 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 returning the exercises (7 weeks)
- programming project work (3 weeks)
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%