Course detail

Object-Oriented Programming

FSI-VOB Acad. year: 2025/2026 Summer semester

The course focuses on object-oriented programming and its use in the design and implementation of software systems that meet current software requirements. The explanation of OOP techniques is partially kept in general terms in terms of methodology, implementation details and practical examples use the C# language (optionally C++). The development of software solutions is in line with DevOps requirements.

Learning outcomes of the course unit

Prerequisites

Planned learning activities and teaching methods

Assesment methods and criteria linked to learning outcomes

The course-unit credit award requirements are active participation in seminars, final test (at most 50 points) and the semestral project (at most 50 points). Students select their project assignments (according preselected goals), which are approved by the teacher. To pass the course, at least 50 points in total must be reached.
The attendance at lectures is recommended; the attendance at seminars is obligatory. Education runs according to week schedules. The form of compensation for missed seminars is fully in the competence of the tutor.

Language of instruction

Czech

Aims

The goal is to understand the features of object-oriented programming and the methodology of designing and creating a program using OOP, which is applied to the most commonly used development patters in the industrial environment. To learn about the support of object technology in C# and how it is developed in a DevOps environment.

The graduate will be able to use object-oriented programming technology to design and implement software systems using the C# programming language.

Specification of controlled education, way of implementation and compensation for absences

The study programmes with the given course

Programme N-MAI-P: Mathematical Engineering, Master's
branch ---: no specialisation, 3 credits, elective

Programme B-STR-P: Engineering, Bachelor's
branch AIŘ: Applied Computer Science and Control, 3 credits, compulsory

Type of course unit

 

Lecture

13 hours, optionally

Syllabus

1. Classification of programming languages. Development of programming technology. Characteristics of OOP. TDD.
2. C# language, basic concepts, object data types, access to object items.
3. Object, instance initialization, constructor and destructor, methods, arrays, modifiers.
4. Inheritance, object hierarchy and interrelationships, delegate, event.
5. Overloading, abstraction, virtual methods,
6. Casting – explicit and implicit, conversion.
7. Anonymous funkce, serialization, etc.
8. IO, data streams, task and thread.
9. Exceptions, LINQ.
10. Application design in .NET 8 and above.
11.-12. Object oriented design, general OOP methodology, design patterns.
13. Implementation of large scale projects.

Computer-assisted exercise

26 hours, compulsory

Syllabus

1. Repeating algorithmization, working with the development environment.
2. Examples without using object properties.
3.-10. Examples to the topics discussed in the C# lectures (Messaging SW s SignalR, Aplikace s Kafka/RabbitMQ).
11., 12. Implementation of a server application in C# (API, Controllers, Minimal API).
13. Final test.