Object-Oriented Programming (5 cr)
Code: 5051262-3002
General information
- Enrollment
-
01.12.2020 - 15.01.2021
Registration for the implementation has ended.
- Timing
-
11.01.2021 - 30.04.2021
Implementation has ended.
- Number of ECTS credits allocated
- 5 cr
- Local portion
- 5 cr
- Mode of delivery
- Contact learning
- Unit
- Engineering and Business
- Campus
- Kupittaa Campus
- Teaching languages
- Finnish
- Degree programmes
- Degree Programme in Information and Communication Technology
Evaluation scale
H-5
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)
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
Pedagogic approaches and sustainable development
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
Evaluation 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
Failed (0)
< 40% of assessed exercises
Assessment criteria, satisfactory (1-2)
40-59%
Assessment criteria, good (3-4)
60-79%
Assessment criteria, excellent (5)
>80%
Further information
the course uses itslearning as learning platform