Course detail

Object-Oriented Programming

FSI-VOBAcad. year: 2021/2022

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

Mode of study

Not applicable.

Learning outcomes of the course unit

Graduates will be able to use object-oriented programming technology for the design and implementation of software systems using the C++ and C# languages.

Prerequisites

Expected to have basic knowledge of algorithms and programming in a procedural programming language. Knowledge of the C language is an advantage.

Co-requisites

Not applicable.

Planned learning activities and teaching methods

The course is taught through lectures explaining the basic principles and theory of the discipline. Exercises are focused on practical topics presented in lectures.

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, which are approved by the teacher. To pass the course, at least 50 points in total must be reached.

Course curriculum

Not applicable.

Work placements

Not applicable.

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 #.

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

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.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Stroustrup, B.: The C++ Programming Language. 3rd Edition. Addison-Wesley Professional, 2000.
Weisfeld, M.: The Object-Oriented Thought Process. Addison-Wesley Professional, 2008.

Recommended reading

Prata, S.: Mistrovství v C++, 2. vydání. Computer Press, 2004
Stroustrup, B.: The C++ Programming Language. 3rd Edition. Addison-Wesley Professional, 2000.

Elearning

Classification of course in study plans

  • Programme N-AIŘ-P Master's 1 year of study, summer semester, compulsory

Type of course unit

 

Lecture

13 hod., 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 hod., 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.

Elearning