Course detail
Practical programming in C++
FEKT-BPPCAcad. year: 2018/2019
Basic aim of this course is learning C++ basics like C extension (C basics are learned in BPC2A course).
The C++ extensions are: non object C++ features, Basic object features, standard libraries. There are also learned object programming concepts and tools for C++ programming.
Supervisor
Learning outcomes of the course unit
The student is able:
- design programs with non object language extensions
- design a program using objectoriented programming
- create program with objects (acces rights, member data, methods, operators)
- read simple object oriented programs
- write object oriented C++ programm with inheritance, polymorphism (virtual methods)
- to use streams for input and output,
- to make basic template design.
Prerequisites
Attend BPC1 course and pass out BPC2 course or similar.
- compulsory prerequisite
Co-requisites
Not applicable.
Recommended optional programme components
Not applicable.
Recommended or required reading
Horstmann C. S.: Vyšší škola objektového návrhu v C++, John Wiley & Sons, NY, 1995 (CS)
Herout, P: ABC programátora v C a C++, KOPP 1998, ISBN 80-901051-2-2 (CS)
Stroustrup B.:The C++ Programming Language, Addison-Wesley,1997 (CS)
RICHTER, M., PETYOVSKÝ, P., HORÁK, K., KALOVÁ, I. elektronicke texty Prakticke programovani v cpp SL. Brno: 2004. s. 1 ( s.) (CS)
Virius, M.: Jazyky C a C++, Grada Publishing 2006, ISBN 80-247-1494-9 (CS)
Virius, M.: Pasti a propasti jazyka C++, 2. vydani, Computer press 2005, ISBN 80-251-0509-1 (CS)
Alexandrescu, A.: Moderni programovani v C++, Computer press 2004, ISBN 80-251-0370-6 (CS)
Prata, S.: C++ Primer Plus, Indianapolis, SAMS, 2005, ISBN 0-672-32697-3 (EN)
Eckel, B.: Thinking in C++, 2000, ISBN 978-0139798092 (EN)
Planned learning activities and teaching methods
Teaching methods include lectures and computer laboratories. Course is taking advantage of www pages coupled with e-learning (Moodle) system. Students have to write a single project during the course.
Assesment methods and criteria linked to learning outcomes
Project - program with classes - up to 40pts.
Tests, written exams - up to 80pts.
The points (up to 100) and requirements for completion of a course are specified by a regulation issued by the lecturer responsible for the course and updated for every year.
Language of instruction
Czech
Work placements
Not applicable.
Course curriculum
1. introduction, C overview
2. comparing C and C++, objects
3. references, this
4. function overloading, implicit parameters
5. constructors and destructors
6. operators
7. inline methods
8. streams
9. inheritance
10. multiple inheritance
11. virtual methods
12. abstract classes
13. exceptions, templates
Content of seminars: practical exercises based on lecture topics.
Aims
To learn C++ like non object and object C extension. To acquire object programming knowledges.
Specification of controlled education, way of implementation and compensation for absences
The content and forms of instruction in the evaluated course are specified by a regulation issued by the lecturer responsible for the course and updated for every academic year
Type of course unit
Fundamentals seminar
13 hours, optionally
Teacher / Lecturer
Exercise in computer lab
26 hours, compulsory
Teacher / Lecturer