INFPOOP Objektové programování

Obchodně podnikatelská fakulta v Karviné
zima 2011
Rozsah
2/1/0. 4 kr. Ukončení: z.
Vyučující
doc. Ing. Petr Čermák, Ph.D. (přednášející)
Ing. Marek Spišák (přednášející)
RNDr. Ing. Bohuslav Rychtar (cvičící)
Ing. Marek Spišák (cvičící)
Garance
doc. Ing. Petr Čermák, Ph.D.
Katedra informatiky a matematiky – Obchodně podnikatelská fakulta v Karviné
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
Cíle předmětu
Cílem předmětu je navázat na znalosti ze strukturovaného programování a seznámit studenty s novými postupy objektově orientovaného programování, naučit je vytvářet a používat příslušné datové typy, pracovat s třídami a dynamickými typy, využívat nových prostředků OP, jimiž jsou dědičnost a polymorfismus. Dále se studenti seznámí s pokročilejšími vlastnostmi jazyka C++, mnohem detailněji bude v předmětu rozebrána otázka rozdílností jazyků C++ a JAVA. Cílem předmětu je rovněž objasnit práci se šablonami a objektovými datovými proudy (soubory). Praktická část bude realizována v prostředí Turbo C++, Visual C++, Visual Studio.NET a JAVA v závislosti na možnostech, které fakulta nabízí.
Osnova
  • Struktura výkladu:
    1. Základní prvky jazyků C++, C# a JAVA.
    2. Zapouzdření. Objekty - objektové typy, třídy.
    3. Konstruktor, destruktor.
    4. Operátory, indexování, volání funkce, přetypování.
    5. Dynamické datové typy. Iterátory, kontejnery. Operátory pro správu paměti. Operátory pro alokaci polí.
    6. Automatické a třídní ukazatele. Objekty a obyčejné ukazatele. Ukazatele do třídy, ukazatele na data, ukazatele na metody.
    7. Vazby. Abstraktní třídy. Volání metod. Virtuální metody. Nevirtuální metody. Polymorfismus. Metody ošetření zpráv od Windows.
    8. Vícenásobná dědičnost. Instance, konstruktory a destruktory vícenásobné dědičnosti. Přetypování ukazatelů.
    9. Prostory jmen. Soubory a proudy v C++. Vstup a výstup v C++ a v C#.
    10. Dynamická identifikace typů v C++. Operátory pro bezpečnější přetypování.
    11. Aplikace VC++ a Visual Studio.NET.
    Obsah předmětu:
    1. Základní prvky jazyka C++. Kompilátory. Metody návrhu programů v C++. Standardní knihovna C++ a standardní knihovna šablon. Rozdíl mezi procedurálním a objektovým programováním.
    2. Zapouzdření. Objekty - objektové typy, deklarace třídy, instance třídy, komponenty tříd. Metody - deklarace metod, definování metod. Uživatelské datové typy.
    3. Konstruktor, destruktor. Statické atributy a metody, předefinování metody, překrývání metod. Dědičnost.
    4. Operátory - přiřazovací, základní binární, unární, inkrementace a dekrementace, indexování, volání funkce, přetypování.
    5. Dynamické datové typy - seznam, zásobník, fronta, strom, množina, kupa, slovník. Iterátory, kontejnery.
    6. Přístup ke vnořeným typům (public, protected, private). Dynamická alokace paměti. Operátory pro správu paměti (new, delete), operátory pro alokaci polí.
    7. Automatické a třídní ukazatele. Objekty a obyčejné ukazatele. Ukazatele do třídy, ukazatele na data, ukazatele na metody.
    8. Abstraktní třídy. Virtuální metody. Nevirtuální metody. Polymorfismus. Metody pro ošetření zpráv od Windows.
    9. Vícenásobná dědičnost. Instance, konstruktory a destruktory vícenásobné dědičnosti. Přetypování ukazatelů.
    10. Šablony v C++. Deklarace šablony, šablony řadových funkcí, šablony objektových typů a jejich metod, šablony v rozsáhlých programech, šablony v knihovnách.
    11. Soubory a proudy v C++. Vstup a výstup v C++.
    12. Aplikace VC++.
    13. Práce s C#.

    Na přednáškách je využíváno prezentační zařízení a PC. Výuka seminářů probíhá na počítačových učebnách. Studijní materiály jsou dostupné v elektronické podobě prostřednictvím fakultní počítačové sítě.
Literatura
    povinná literatura
  • PECINOVSKÝ, R., VIRIUS, M. Objektové programování 1. Grada, Praha, 1996. ISBN 80-7169-366-9. info
  • PECINOVSKÝ, R., VIRIUS, M. Objektové programování 2. Grada, Praha, 1996. ISBN 80-7169-436-3. info
    doporučená literatura
  • VIRIUS, M. Programování v C++. ČVUT Praha, 1998. ISBN 80-0101-874-1. info
Informace učitele
Seminární práce, zápočet, min 50% účast na seminářích
Jiná zátěž: vyhledávání a zpracování zdrojů na internetu.
Další komentáře
Předmět je dovoleno ukončit i mimo zkouškové období.
Předmět je zařazen také v obdobích zima 2007, léto 2008, zima 2008, léto 2009, zima 2009, zima 2010, zima 2012, zima 2013.