Kurz je určen pro posluchače, kteří přecházejí z jazyka C na C++, nebo jen chtějí proniknout do problematiky návrhu a implementace objektů v jazyce C++. Na kurzu se naučíte definovat objekty, konstruktory a destruktory, používat virtuální [...]
  • CPP_OOP
  • Délka 5 dní
  • 50 ITK bodů
  • 6 termínů
  • Praha (20 500 Kč)

    Brno (20 500 Kč)

    Bratislava (900 €)

  • Začátečník

Kurz je určen pro posluchače, kteří přecházejí z jazyka C na C++, nebo jen chtějí proniknout do problematiky návrhu a implementace objektů v jazyce C++. Na kurzu se naučíte definovat objekty, konstruktory a destruktory, používat virtuální funkce, dědičnost a agregaci, přetěžovat operátory a zpracovávat události a výjimky. Představované techniky jsou striktně platformově neutrální, použitelné v operačních systémech Windows, Unix, Linux apod.

»
  • Definice objektu v C++
  • Atributy a metody objektů
  • Přístupová práva k atributům a metodám
  • Konstruktory, implicitní konstruktory, copy-konstruktory
  • Destruktory
  • Dědičnost
  • Virtuální funkce, destruktory
  • Operátory new a delete
  • Statické metody a atributy
  • Znalosti v rozsahu kurzu Programovací jazyk
  • C a C++ - základní kurz (CPP_INTRO).

C++ třída a zapouzdření

  • Trochu objektově orientované teorie a názvosloví.
  • Klíčové slovo „class“ a „struct“
  • Deklarace atributů, jmenné konvence
  • Přístupová práva „private“ a „public“
  • Definice metod objektu
  • „inline“ funkce a metody
  • „const“ metody a „mutable“ atributy
  • Statické atributy a metody
  • „friend“ deklarace
  • Implicitní konstruktor, destruktor
  • Operátory „new“ a „delete“, alokace pole
  • Význam kopírovacího konstruktoru a přiřazovacího operátoru
  • „RULE OF THREE“ a jeho důsledky
  • Konverze pomocí konstruktorů s jedním parametrem, „explicit“ konstruktory

Jednoduchá dědičnost

  • Typy vazeb mezi objekty, trocha UML
  • Generalizace vs. agregace
  • Dědičnost a příklady objektových hierarchií
  • Důsledky „IS KIND OF“ vazby na kompatibilitu instancí
  • Přístupové právo „protected“ a zásady návrhu bázové třídy
  • Přetěžování metod potomkem, zastínění bázové metody

Polymorfismus

  • Co je to vlastně polymorfismus? Příklady hierarchií.
  • Brzká a pozdní vazba, virtuální metody.
  • Polymorfické kontejnery, virtuální destruktory
  • Statický vs. Dynamický typ, „dynamic_cast“ a ostatní operátory pro
  • přetypování
  • Ryze virtuální metody a abstraktní třídy
  • Pojem „interface“, příklady využití

Vícenásobná dědičnost

  • Výhody vícenásobné dědičnosti
  • Problém s diamantem v dědičnosti
  • Virtuální dědičnost, dekompozice instance do acyklického grafu
  • Nejednoznačnost symbolů a inicializace instance

Výjimky

  • Ošetřování chyb ve stylu jazyka C a C++
  • Klíčová slova „throw“, „try“, a „catch“
  • Návrh tříd sloužící jako výjimky, rozhraní třídy „std::exception“
  • Výjimky a citlivý kód konstruktoru a destruktoru
Aktuální nabídka
Školicí místo
Jazyk kurzu

Uvedené ceny jsou bez DPH.