460-2055/01 – Object Oriented Programming (OOP)

Gurantor departmentDepartment of Computer ScienceCredits4
Subject guarantordoc. Mgr. Miloš Kudělka, Ph.D.Subject version guarantordoc. Mgr. Miloš Kudělka, Ph.D.
Study levelundergraduate or graduateRequirementCompulsory
Year1Semestersummer
Study languageCzech
Year of introduction2019/2020Year of cancellation
Intended for the facultiesFEI, FSIntended for study typesBachelor
Instruction secured by
LoginNameTuitorTeacher giving lectures
BRO0100 Ing. David Broniek
KOT0084 Ing. Vojtěch Kotík
KUD007 doc. Mgr. Miloš Kudělka, Ph.D.
MIK0095 Ing. Martin Mikula
PLE0049 Ing. Jakub Plesník
REH0063 Ing. Ondřej Řeháček
SIK0092 Ing. Lubomír Sikora
TOM0092 Ing. Lukáš Tomaszek
VAS218 Ing. Michal Vašinek, Ph.D.
Extent of instruction for forms of study
Form of studyWay of compl.Extent
Full-time Credit and Examination 1+3
Combined Credit and Examination 14+0

Subject aims expressed by acquired skills and competences

The course is focused on the introduction of the key concept of object-oriented programming, and basics of C++ language necessary for the design of simple object-oriented programs. After finishing the course, students will understand the difference between structured and object-oriented programming. To a limited extent, students will be able to handle the practical object-oriented design and implementation of a program using object-oriented techniques.

Teaching methods

Lectures
Tutorials

Summary

Object-oriented approaches are an essential part of the computer science curricula. OOP is not only a key concept of thinking but also the technological support of software solutions. The course is closely connected to Algorithms 1 and 2. Skills associated with using C ++ will be practically applied in the design of object-oriented programs. The expected inputs for the course are the successful completion of course Introduction to Programming.

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

Recommended literature:

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

Way of continuous check of knowledge in the course of semester

Subject 460-2055 / 01 Object Oriented Programming has as a compulsory prerequisite subject 460-2052 / 01 Introduction to Programming (student cannot pass exam from 460-2055 / 01 OOP if he / she has not obtained cgraded credit from 460-2052 / 01)

E-learning

Další požadavky na studenta

Additional requirements are not placed on the student.

Prerequisities

Subject codeAbbreviationTitleRequirement
460-2052 UPR Introduction to Programming Recommended

Co-requisities

Subject has no co-requisities.

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.

Conditions for subject completion

Conditions for completion are defined only for particular subject version and form of study

Occurrence in study plans

Academic yearProgrammeField of studySpec.FormStudy language Tut. centreYearWSType of duty
2019/2020 (B2647) Information and Communication Technology P Czech Ostrava 1 Compulsory study plan
2019/2020 (B2647) Information and Communication Technology K Czech Ostrava 1 Compulsory study plan
2019/2020 (B0714A150003) Computer Systems for the Industry of the 21st. Century P Czech Ostrava 2 Compulsory study plan
2019/2020 (B3973) Automotive Electronic Systems P Czech Ostrava 1 Compulsory study plan
2019/2020 (B0714A060008) Mobile Technology P Czech Ostrava 1 Compulsory study plan
2019/2020 (B0541A170008) Computational and Applied Mathematics P Czech Ostrava 1 Optional study plan
2019/2020 (B0541A170008) Computational and Applied Mathematics K Czech Ostrava 1 Optional study plan
2019/2020 (B0714A060008) Mobile Technology K Czech Ostrava 1 Compulsory study plan
2019/2020 (B0588A170003) Applied Sciences and Technologies P Czech Ostrava 1 Choice-compulsory type A study plan
2019/2020 (B0613A140014) Computer Science P Czech Ostrava 1 Compulsory study plan
2019/2020 (B0613A140014) Computer Science K Czech Ostrava 1 Compulsory study plan
2019/2020 (B0588A170003) Applied Sciences and Technologies P Czech Ostrava 1 Choice-compulsory type B study plan
2019/2020 (B0588A170003) Applied Sciences and Technologies P Czech Ostrava 1 Choice-compulsory type B study plan
2019/2020 (B0588A170003) Applied Sciences and Technologies P Czech Ostrava 1 Choice-compulsory type B study plan
2019/2020 (B0588A170003) Applied Sciences and Technologies P Czech Ostrava 1 Choice-compulsory type B study plan

Occurrence in special blocks

Block nameAcademic yearForm of studyStudy language YearWSType of blockBlock owner