Course detail

Object-Oriented Programming

FSI-VOB Acad. year: 2023/2024 Summer semester

The course focuses on object-oriented programming and its use in the design and implementation of software systems. Interpretation of OOP is in terms of the methodology discussed in general terms, implementation details and practical examples use the C++ and C# languages.

Language of instruction

Czech

Number of ECTS credits

3

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, 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 aim is to understand the features of object-oriented programming and methodology of program design and creation using OOP technology. Get acquainted with the support of object technology in C ++ and C #.
Graduates will be able to use object-oriented programming technology for the design and implementation of software systems using the C++ and C# languages.

The study programmes with the given course

Programme N-AIŘ-P: Applied Computer Science and Control, Master's, compulsory

Type of course unit

 

Lecture

13 hours, optionally

Teacher / Lecturer

Syllabus

1. Classification of programming languages. History of the programming technology. Fundamentals of object oriented programming.
2. Introduction to C++ asnd C#, basic concepts, object data types, accessing the elements of objects.
3. The instance initialization, constructor and destructor.
4. Inheritance, hierarchy and relationship of objects.
5. Late binding, virtual methods.
6. Overloaded operators.
7. Data containers.
8. Objects serialization, data streams. Persistent objects.
9. Generic programming.
10.-11. Object oriented design of software projects.
12. Using objects as computational processes.
13. Implementatin of large projects.

Computer-assisted exercise

26 hours, compulsory

Teacher / Lecturer

Syllabus

1. Repetition of algorithms, using of compiler.
2. Examples in C++ (without using OOP techniques).
3.-10. Examples of the topics discussed in the lectures in C ++ and alternatively in C #.
11., 12. Iplementation of genetic algorithm in C++.
13. Final test.