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.
Language of instruction
Czech
Number of ECTS credits
3
Supervisor
Department
Entry knowledge
Expected to have basic knowledge of algorithms and programming in a procedural programming language. Knowledge of the C language is an advantage.
Rules for evaluation and completion of the course
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.
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.
The study programmes with the given course
Programme N-MAI-P: Mathematical Engineering, Master's, elective
Programme B-STR-P: Engineering, Bachelor's
specialization AIŘ: Applied Computer Science and Control, 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.