Object Oriented ProgrammingLaajuus (5 cr)
Code: 4_EFS8070
Credits
5 op
Learning objectives
You understand the object-oriented programming paradigm
You realize what a class is
You are able to define a class
You realize what an object is
You are able to create instances of a class
You realize what an attribute is
You are able to create attributes into a class
You realize what a method is
You are able to create a dynamic method bound to an instance of a class
You are able to create a static method
You are able to use objects when modelling an application domain
You are able to design classes according to an application domain model
You realize what data encapsulation means
You realize what is an accessor
You realize what is an mutator
You realize what a mutator is used for
You realize what an accessor is used for
You realize what access control attributes are
You are able to restrict visibility of attributes
You are able to restrict visibility of methods
You are able to create accessors
You realize what inheritance is about
You are able to inherit a class
You are able to override a method in a subclass
You are able to restrict the visibility of inherited attributes in a subclass
You are able to restrict the visibility of inherited methods in a subclass
You realize what aggregation means
You realize what composition means
You realize what overriding a method means
You are able to realize an aggregation
You are able to realize an composition
You are able to utilize code reusability in a larger project
You realize the role of polymorphism in inheritance
You realize the role of polymorphism in methods
You realize what overriding a method means
You realize how data type conversions work
You are able to write an overridable method
You are able to override a method
You realize what exceptions are
You realize how exceptions are used
You are able to catch an exception
You are able to throw an exception
You are able to design an exception class of your own
You realize what is an interface
You are able to design interfaces
You are able to realize interfaces
You are able to realize several interfaces into one class
You realize what is an abstract class
You are able to design an abstract class
You are able to design an abstract method
You are able to realize an abstract method
You are able to design an implementation model for the application domain
You are able to choose inheritance, aggregation and composition regarding the
needs of the application domain
You realize what threads are
You are able to use threads in your programs
You realize parallel processing using threads
You know the fundamental generic classes of the programming language
You are able to utilize generic classes
Content
Object-oriented paradigm and modelling
Classes and instances
Data encapsulation
Static and dynamic attributes and methods
Accessors and mutators
Inheritance
Polymorphism
Abstract classes
Interfaces
Aggregation and composition
Threads
Exceptions
Materials
Lecture notes. Any book about object oriented programming.
Qualifications
Basics of Programming , User Interface Programming
Enrollment
01.12.2024 - 15.01.2025
Timing
01.01.2025 - 31.07.2025
Credits
5 op
Mode of delivery
Contact teaching
Teaching languages
- English
Degree programmes
- Degree Programme in Internet of Things
Teachers
- Teemu Matilainen
Student groups
-
IT24SPInformation Technology IOT
Qualifications
Basics of Programming , User Interface Programming
Materials
Lecture notes. Any book about object oriented programming.
Enrollment
01.12.2023 - 15.01.2024
Timing
01.01.2024 - 31.07.2024
Credits
5 op
Mode of delivery
Contact teaching
Teaching languages
- English
Teachers
- Teemu Matilainen
Student groups
-
IT23SPInformation Technology IOT
Qualifications
Basics of Programming , User Interface Programming
Materials
Lecture notes. Any book about object oriented programming.
Enrollment
01.08.2023 - 15.09.2023
Timing
04.09.2023 - 20.12.2023
Credits
5 op
Mode of delivery
Contact teaching
Teaching languages
- English
Seats
0 - 50
Teachers
- Mika Vanhanen
Student groups
-
EF22SPBachelor Degree Programme in Information Technology IOT
Teaching methods
You are able to use Object-oriented paradigm and modelling
You realize what a class is and how to define a new class.
What is an instance of a class and how you create it.
You realize what an attribute is
You are able to create attributes into a class
You realize what data encapsulation means
You realize how to use accessors and mutators
You are able to create a static method
You realize what overriding a method means
You are able to write an overridable method and override methods in subclasses
You realize what inheritance is about
You realize what aggregation and composition means
You are able to understand and use of abstract classes and methods
You know principles of Interfaces.
You learn what exceptions are.
You learn how and why exceptions are used.
You realize what threads are
You are able to use threads in your programs
Course contains one exam and multiple exercises
Student workload
Lectures: 56 h
Self-studies, exercises: 79 h
Qualifications
Basics of Programming , User Interface Programming
Materials
Lecture notes are available at Moodle platform.
Any book about object oriented programming.
Further information
Prerequisites:
Basics of Programming, User Interface Programming
Learning environment (Moodle):
https://moodle.savonia.fi/course/view.php?id=17681