460-2057/01 – Programování v C# I (C# I)
Garantující katedra | Katedra informatiky | Kredity | 4 |
Garant předmětu | doc. Ing. Petr Gajdoš, Ph.D. | Garant verze předmětu | doc. Ing. Petr Gajdoš, Ph.D. |
Úroveň studia | pregraduální nebo graduální | Povinnost | povinně volitelný |
Ročník | 2 | Semestr | zimní |
| | Jazyk výuky | čeština |
Rok zavedení | 2019/2020 | Rok zrušení | |
Určeno pro fakulty | FEI | Určeno pro typy studia | bakalářské |
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:
Doporučená literatura:
Další studijní materiály
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
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
Výskyt ve studijních plánech
Výskyt ve speciálních blocích
Hodnocení Výuky