460-2057/01 – 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íPovinnostpovinně volitelný typu B
Ročník2Semestrzimní
Jazyk výukyčeš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.
JAW254 Ing. Jan Janoušek
Rozsah výuky pro formy studia
Forma studiaZp.zak.Rozsah
prezenční Klasifikovaný zápočet 1+2
kombinovaná Klasifikovaný zápočet 14+0

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

Předmět si klade za cíl seznámit posluchače s jazykem C# na takové úrovni, aby porozuměli základním konstrukcím jazyka, běhovému prostředí a byli schopni samostatně vytvářet desktopové aplikace v tomto jazyce. Znalosti a dovednosti: - vybrané programové prostředí (IDE) s akcentem na Microsoft Visual Studio, ladění programu - porozumění platformám .NET Framework a .NET Core - chápání principů Common Language Runtime (CLR), ahead-of-time (AoT) vs. just-in-time (JIT) kompilace - klíčové prvky jazyka a jazykové konstrukce, gramatika, správa paměti - typový systém a rozdíl mezi primitivními a objektovými typy - principy OOP promítnuté do jazyka C# - iterátory, kontrola běhu programu, systém výjimek - typové konverze, generické typy, kolekce - události, lambda výrazy - práce se soubory, LINQ - tvorba konzolové aplikace Po absolvování kurzu 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] Albahari, Joseph, and Ben Albahari. C# 7.0 in a nutshell : the definitive reference. Sebastopol, CA: O'Reilly, 2018. Print. ISBN: 1491987650 [2] Price, Mark J. C# 7 and .NET Core modern cross-platform development : create powerful cross-platform applications using C# 7, .NET Core, and Visual Studio 2017 or Visual Studio Code. Birmingham, UK: Packt Publishing, 2017. Print. ISBN: 1787129551

Doporučená literatura:

[1] Troelsen, Andrew, and Philip Japikse. Pro C# 7 With .net and .net Core. City: Apress, 2018. Print. ISBN: 1484230175

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ářů.

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í Doporučená
460-2055 OOP Objektově orientované programování Doporučená

Korekvizity

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

Osnova předmětu

Přednášky budou zahrnovat přinejmenším tato témata: 1. Popis architektury .NET CORE 2. Datové typy a programové konstrukce jazyka C# 3. Základní vstup/výstup 4. Definice tříd, dědičnost, přetěžování metod 5. Programová konstrukce rozhraní – definice, využití, implementace 6. Generické datové typy 7. Kolekce a jejich využití, iterátory, LINQ 8. Jednoduché lambda výrazy, systém výjimek 9. Řetězce a regulární výrazy 10. Souborový systém a pokročilá práce se vstupem/výstupem 11. Delagáti a události 12. Atributy a práce s metadaty 13. Vlákna a synchronizace Obsah cvičení bude korespondovat vždy s danou přednáškou a tématem 1. Ukázka základní kompilace kódu, assembly 2. Procvičení datových typů a programových konstrukcí jazyka C# 3. Práce s výstupem na konzoli 4. Definice tříd, dědičnost, přetěžování metod 5. Programová konstrukce rozhraní – definice, využití, implementace 6. Vytvoření generického datového typu a příklad jeho využití 7. Kolekce a jejich využití, iterátory, LINQ 8. Jednoduché lambda výrazy, systém výjimek 9. Zpracování textu s využitím regulárních výrazů 10. Zpracování vstupních/výstupních souborů, XML, JSON, apod. 11. Delagáti a události 12. Atributy a práce s metadaty 13. Příklad vácevláknové aplikace

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

Kombinovaná forma (platnost od: 2022/2023 zimní 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 1
        Úloha 1 Jiný typ úlohy 10  5 1
        Úloha 2 Jiný typ úlohy 10  5 1
        Úloha 3 Jiný typ úlohy 10  5 1
        Úloha 4 Jiný typ úlohy 10  5 1
        Úloha 5 Jiný typ úlohy 10  5 1
        Písemka 1 Písemka 50  26 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 (B0613A140014) Informatika P čeština Ostrava 2 povinně volitelný typu B stu. plán
2024/2025 (B0613A140014) Informatika K čeština Ostrava 2 povinně volitelný typu B stu. plán
2023/2024 (B0613A140014) Informatika K čeština Ostrava 2 povinně volitelný typu B stu. plán
2023/2024 (B0613A140014) Informatika P čeština Ostrava 2 povinně volitelný typu B stu. plán
2022/2023 (B0613A140014) Informatika K čeština Ostrava 2 povinně volitelný typu B stu. plán
2022/2023 (B0613A140014) Informatika P čeština Ostrava 2 povinně volitelný typu B stu. plán
2022/2023 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 povinně volitelný stu. plán
2022/2023 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 povinně volitelný stu. plán
2021/2022 (B0613A140014) Informatika K čeština Ostrava 2 povinně volitelný typu B stu. plán
2021/2022 (B0613A140014) Informatika P čeština Ostrava 2 povinně volitelný typu B stu. plán
2021/2022 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 povinně volitelný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 povinně volitelný stu. plán
2020/2021 (B0613A140014) Informatika IC# K čeština Ostrava 2 povinně volitelný typu A stu. plán
2020/2021 (B0613A140014) Informatika IC# P čeština Ostrava 2 povinně volitelný typu A stu. plán
2020/2021 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 povinně volitelný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 povinně volitelný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2019/2020 (B0613A140014) Informatika IC# P čeština Ostrava 2 povinně volitelný typu A stu. plán
2019/2020 (B0613A140014) Informatika IC# K čeština Ostrava 2 povinně volitelný typu A 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



2023/2024 zimní
2022/2023 zimní
2021/2022 zimní
2020/2021 zimní