Course detail

Practical programming in C++

FEKT-CPPCAcad. 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.

Language of instruction

English

Number of ECTS credits

6

Mode of study

Not applicable.

Learning outcomes of the course unit

The student is able:
- to read object oriented program,
- to write object oriented C++ programm with inheritance, polymorphism,
- to use streams for input and output,
- to make basic template design.

Prerequisites

Attending BPC1 and BPC2 courses or similar.

Co-requisites

Not applicable.

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 20pts.
Tests, written exams - up to 30 + 50pts.
Requirements for completion of a course are specified by a regulation issued by the lecturer responsible for the course and updated for every year.

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.

Work placements

Not applicable.

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.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Eckel, Allison, Thinking in C++ volume I, volume II., Pearson Education, Inc (EN)
Prata, Stephen, C++ PRIMER PLUS, Pearson Education, inc, (EN)

Recommended reading

Not applicable.

Classification of course in study plans

  • Programme EECC Bc. Bachelor's

    branch BC-AMT , 2 year of study, winter semester, compulsory

Type of course unit

 

Lecture

26 hod., optionally

Teacher / Lecturer

Syllabus

C overview
main differences between C and C++
references, new operators and types, overloading
object programming
classes, data members and methods, constructors and destructors
inputs and outputs in C++, streams, operators
inheritance - simple and multiple,
templates, memory management, exceptions
polymorphism, virtual functions, abstract base classes
standard template library, namespaces
techniques and features of oo programming
GUI, SW for creation of application, application design
API functions,

Exercise in computer lab

26 hod., compulsory

Teacher / Lecturer

Syllabus

Practicing subjects described on lessons on thematic examples. Working on individual projects.