Skip to main content
Skip header

Object Oriented Programming

Type of study Bachelor
Language of instruction Czech
Code 460-2055/01
Abbreviation OOP
Course title Object Oriented Programming
Credits 4
Coordinating department Department of Computer Science
Course coordinator doc. Mgr. Miloš Kudělka, Ph.D.

Subject syllabus

Lectures
1. Evolution of programming paradigms.
2. Aspects of software quality. Reusing.
3. Class x object. Object as a computer representation of real-world entity. Data and functions of objects.
4. OOP principles. Encapsulation, composition, message sending, inheritance, polymorphism.
5. Constructors and destructors I. How it works and why.
6. Public and private part of objects. Hiding of implementation.
7. Design of object-oriented program I.
8. Simple and multiple inheritance. Polymorphism.
9. Virtual methods. Abstract class.
10. Constructors and destructors II. Special kinds of constructors, copy constructor.
11. Design of object-oriented program II.
12. Templates. How it works and why.
13. Standard object libraries of C++ language.
14. Defensive approach of object oriented programming.

Seminars
Comparison of source codes of procedural and object oriented programs.
Example of implementation – cooperating classes, analysis of object behavior, hiding of details of implementation.
Implementation of object-oriented program I.
Example of implementation – simple inheritance, analysis of object behavior.
Implementation of object-oriented program II.
Example of implementation – templates and standard C++ libraries.
Example and defensive implementation of object-oriented program.

Literature

Meyer, B.: Object-Oriented Software Construction, Prentice Hall, 1997, ISBN: 978-0136291558 .
Eckel B.: Myslíme v jazyku C++, GradaPublishing, 2000, ISBN 80-247-9009-2.

Doporučená literatura

Stroustrup, B.: The C++ Programming Language. Addison-Wesley Professional, 1997, ISBN 0201889544 .