460-2068/02 – Programování v C++ I (C++ I)

Garantující katedraKatedra informatikyKredity4
Garant předmětudoc. Ing. Petr Gajdoš, Ph.D.Garant verze předmětudoc. Ing. Petr Gajdoš, Ph.D.
Úroveň studiapregraduální nebo graduálníPovinnostvolitelný odborný
Ročník2Semestrletní
Jazyk výukyangličtina
Rok zavedení2019/2020Rok zrušení
Určeno pro fakultyFEIUrčeno pro typy studiabakalářské
Výuku zajišťuje
Os. čís.JménoCvičícíPřednášející
GAJ03 doc. Ing. Petr Gajdoš, Ph.D.
Rozsah výuky pro formy studia
Forma studiaZp.zak.Rozsah
prezenční Klasifikovaný zápočet 1+3

Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi

Předmět si klade za cíl blíže seznámit posluchače s jazykem C++ v jeho nejnovější podobě, a to na takové úrovni, aby porozuměli základním i pokročilým konstrukcím jazyka, běhovému prostředí a byli schopni samostatně vytvářet komplexnější aplikace v tomto jazyce. Znalosti a dovednosti: - jazyk C++ od standardu C++11 výše - principy OOP promítnuté do jazyka C++ - základní znalost "Standard Library (STL)" a užitečných tříd - porozumnění komplexnějším konstrukcím - znalost vybraného vývojového prostředí - tvorba konzolové aplikace - konstrukce vlastních tříd s požadovanou funkcionalitou Po absolvování kurzy by měl posluchač umět navrhnout a implementovat řešení problému s ohledem na znalost objektově orientovaného programování s využitím nejnovějších možností jazyka C++.

Vyučovací metody

Přednášky
Cvičení (v učebně)

Anotace

Posluchači si prohloubí znalosti objektově orientovaného programování s ohledem na využití jazyka C++, který se řadí mezi nejpoužívanější jazyky současnosti. Kurz navazuje na kurzy „Úvod do programování“ a „Objektově orientované programování“ a je vyžadováno, aby měli studenti tyto předměty již úspěšně dokončeny.

Povinná literatura:

[1] Stroustrup, Bjarne. The C++ programming language. Upper Saddle River, NJ: Addison-Wesley, 2013. Print. [2] Bancila, Marius. Modern C++ programming cookbook : over 100 recipes to help you overcome your difficulties with C++ programming and gain deeper understanding of the working of modern C. Birmingham, UK: Packt Publishing, 2017. Print.

Doporučená literatura:

[1] Galowicz, Jacek. C++17 STL Cookbook. Birmingham: Packt Publishing, 2017. Print. [2] Savitch, Walter J., and Kenrick Mock. Problem solving with C++. 9th Edition, Boston: Pearson, 2015. Print.

Forma způsobu ověření studijních výsledků a další požadavky na studenta

Průběžná kontrola studijních aktivit a přiřazených úkolů v rámci pravidelných seminářů. Předmět 460-2072/01 Programování v C++ II má jako povinnou prerekvizitu předmět 460-2068/01 Programování v C++ I.

E-learning

Další požadavky na studenta

Očekává se, že studenti budou na lekcích z programování aktivně řešit zadané úlohy. Některé úlohy mohou vyžadovat pečlivou domácí přípravu.

Prerekvizity

Kód předmětuZkratkaNázevPovinnost
460-2052 UPR Úvod do programování Povinná
460-2055 OOP Objektově orientované programování Povinná

Korekvizity

Předmět nemá žádné korekvizity.

Osnova předmětu

Přednášky budou sloužit jako vstupní bod pro cvičení. Kladou si za cíl uvést posluchače do problematiky a nastínit následnou práci na cvičeních. Přednášky budou zahrnovat přinejmenším tato témata: - typový systém, od základních datových typů po objektové, typové konverze - práce s pointery a referencemi, základní princip tzv. „smart pointers“ - kontrola běhu programu - operátory, jejich přetěžování - principy OOP promítnuté do jazyka C++ - standard library: -- systém výjimek -- iterátory a jejich typy -- práce se soubory -- tvorba konzolové aplikace -- další vybrané třídy z STL Obsah cvičení bude korespondovat vždy s danou přednáškou a tématem: 1. Základní datové typy, struct, union 2. Možnosti alokace paměti, pointery, reference, smart pointers 3. Kontrola běhu programu 4. Operátory, jejich přetěžování, bitové operátory a jejich využití 5. Principy OOP promítnuté do jazyka C++ 6. Obeznámení se se standardní knihovnou a konceptem jejich tříd 7. Výjimky a jejich využití 8. Konstrukce různých typů iterátorů a jejich využití 9. Práce s textovými a binárními soubory 10.-12. Případová studie: Tvorba komplexnější konzolové aplikace - zpracování dat 13. Další vybrané třídy z STL 14. Ověření znalostí

Podmínky absolvování předmětu

Prezenční forma (platnost od: 2023/2024 letní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodůMax. počet pokusů
Klasifikovaný zápočet Klasifikovaný zápočet 100 (100) 51 3
        Projekt Projekt 40  21 1
        Domácí úkoly Jiný typ úlohy 60  11 1
Rozsah povinné účasti: Účast na cvičeních je povinná a je kontrolována. S rozsahem povinné účastí seznámí studenty garant předmětu na začátku semestru.

Zobrazit historii

Podmínky absolvování předmětu a účast na cvičeních v rámci ISP: Splnění všech povinných úkolů v individuálně dohodnutých termínech. Rozsah účasti na cvičeních si student na začátku semestru dohodne s garantem předmětu.

Zobrazit historii

Výskyt ve studijních plánech

Akademický rokProgramObor/spec.Spec.ZaměřeníFormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
2024/2025 (B0613A140010) Informatika P angličtina Ostrava 2 volitelný odborný stu. plán
2023/2024 (B0613A140010) Informatika P angličtina Ostrava 2 volitelný odborný stu. plán
2023/2024 (B0541A170009) Výpočetní a aplikovaná matematika P angličtina Ostrava 2 volitelný odborný stu. plán
2022/2023 (B0613A140010) Informatika P angličtina Ostrava 2 volitelný odborný stu. plán
2022/2023 (B0541A170009) Výpočetní a aplikovaná matematika P angličtina Ostrava 2 volitelný odborný stu. plán
2021/2022 (B0613A140010) Informatika P angličtina Ostrava 2 volitelný odborný stu. plán
2021/2022 (B0541A170009) Výpočetní a aplikovaná matematika P angličtina Ostrava 2 volitelný odborný stu. plán
2020/2021 (B0613A140010) Informatika P angličtina Ostrava 2 volitelný odborný stu. plán
2020/2021 (B0541A170009) Výpočetní a aplikovaná matematika P angličtina Ostrava 2 volitelný odborný stu. plán
2019/2020 (B0613A140010) Informatika P angličtina Ostrava 2 volitelný odborný stu. plán
2019/2020 (B0541A170009) Výpočetní a aplikovaná matematika P angličtina Ostrava 2 volitelný odborný stu. plán

Výskyt ve speciálních blocích

Název blokuAkademický rokForma studiaJazyk výuky RočníkZLTyp blokuVlastník bloku

Hodnocení Výuky

Předmět neobsahuje žádné hodnocení.