INF250S Objektové programování

Obchodně podnikatelská fakulta v Karviné
léto 2007
Rozsah
2/1/0. 5 kr. Ukončení: zk.
Vyučující
Ing. Marek Spišák (přednášející)
Ing. Marek Spišák (cvičící)
Garance
Ing. Marek Spišák
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++, Vizual 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 Vizual Studio.NET
    Obsah předmětu:
    1. Základní prvky jazyku 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ě.
Informace učitele
Předmět je ukončen zkouškou. Pět kreditů se uděluje ve zkouškovém období za získání alespoň 36 bodů ze 60 možných.
Hodnocení: výborně 52 - 60 bodů, velmi dobře 42 - 51 bodů, dobře 36 - 41 bodů.
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 léto 1991, léto 1992, léto 1993, léto 1994, léto 1995, léto 1996, léto 1997, léto 1998, léto 1999, léto 2000, léto 2001, léto 2002, léto 2003, léto 2004, léto 2005, léto 2006, léto 2008, léto 2010.