Semester: 3
ECTS: 6
Lectures: 30
Practice sessions: 45
Independent work: 105
Module Code: 24-000-0116
Semester: 3
ECTS: 6
Lectures: 30
Practice sessions: 45
Independent work: 105
Module Code: 24-000-0116
Module title:
Object oriented programming
Lecturers and associates:
Module overview:
The aim of the module is to familiarize students with the principles of object-oriented programming: encapsulation, inheritance, polymorphism and abstraction.
This is the central module within the study program, it continues on to Data Structures and Algorithms and represents the basis for other programming modules that students enrol in in the coming semesters. Acquired skills significantly contribute to the professional development of students in related professional fields.
The module is taught in the programming language C#. The final evaluation is based on solving a series of small practical tasks using the given programming language and tools for software development.
Students will learn:
- principles of object-oriented programming: encapsulation, inheritance, polymorphism and abstraction
- object-oriented units specific to the C# programming language
- LINQ (Language Integrated Query) API
- generic classes
- collections
- exception handling mechanisms
- specific implementation of publisher/subscriber pattern
- anonymous classes
Literature:
Required readings:
1. Stellman, A. and Greene J. (2021) Head First C#: A Learner´s Guide to Real-World Programming with C# and .Net Core. 4th edn. Sebastopol: O´Reilly.
2. Albahari, J. (2019) C# 8.0 Pocket Reference. 1st edn. Sebastopol: O´Reilly.
Supplementary readings:
1. Skeet, J. (2019) C# in Depth. 4th edn. Shelter Island: Manning Publications.