Detail předmětu
Programování v .NET a C#
FEKT-XMW5Ak. rok: 2016/2017
Úvod do platformy .NET – práce s pamětí, CLR, typová bezpečnost, assembly, Základy jazyka C# - syntaxe, primitivní datové typy, operátory, namespace,OOP v C# - třída, dědičnost, interface, struktura, modifikátory přístupu, generika, Pokročilé konstrukce v C# - delegáty, eventy, zachytávání vyjímek, lambdy, Base class library - IDisposable, kolekce, IO streamy, LINQ, Návrhové vzory, Desktop GUI - WinForms, WPF, MVVM, UX design, WEB - ASP.NET, MVC, ORM, SOLID - principy, IoC kontejnery, WCF a interoperabilita, Paralelní a asynchronní programovaní - Async await, PLINQ, Parallel task library, Testování v C# - MSTest, nUnit, TDD, UX
Jazyk výuky
Počet kreditů
Garant předmětu
Zajišťuje ústav
Výsledky učení předmětu
Prerekvizity
Plánované vzdělávací činnosti a výukové metody
Způsob a kritéria hodnocení
Osnovy výuky
2. Základy jazyka C# - syntaxe, primitivní datové typy, operátory, namespace
3. OOP v C# - třída, dědičnost, interface, struktura, modifikátory přístupu, generika
4. Pokročilé konstrukce v C# - delegáty, eventy, zachytávání vyjímek, lambdy
5. Base class library - IDisposable, kolekce, IO streamy, LINQ
6. Návrhové vzory
7. Desktop GUI - WinForms, WPF, MVVM, UX design
8. WEB - ASP.NET, MVC, ORM
9. SOLID - principy, IoC kontejnery
10. WCF a interoperabilita
11. Paralelní a asynchronní programovaní - Async await, PLINQ, Parallel task library
12. Testování v C# - MSTest, nUnit, TDD, UX
Učební cíle
Základní literatura
C# in NutShell - http://www.amazon.com/C-5-0-Nutshell-Definitive-Reference/dp/1449320104/ref=sr_1_sc_1?s=books&ie=UTF8&qid=1410518833&sr=1-1-spell&keywords=C%23+in+nusthell
Clean Code - http://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882/ref=pd_bxgy_b_text_y
GOF - http://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612/ref=sr_1_1?s=books&ie=UTF8&qid=1410518852&sr=1-1&keywords=GOF
http://www.microsoft.com/msdn
The art of Unit testing - http://www.amazon.com/Art-Unit-Testing-examples/dp/1617290890/ref=sr_1_1?s=books&ie=UTF8&qid=1410518884&sr=1-1&keywords=the+art+of+unit+testing
Zařazení předmětu ve studijních plánech
- Program EEKR-B bakalářský
obor B-SEE , 3 ročník, letní semestr, volitelný všeobecný
obor B-TLI , 3 ročník, letní semestr, volitelný všeobecný
obor B-EST , 3 ročník, letní semestr, volitelný všeobecný
obor B-AMT , 3 ročník, letní semestr, volitelný všeobecný
obor B-MET , 3 ročník, letní semestr, volitelný všeobecný - Program EEKR-BK bakalářský
obor BK-TLI , 2 ročník, letní semestr, volitelný všeobecný
obor BK-TLI , 3 ročník, letní semestr, volitelný všeobecný
obor BK-AMT , 2 ročník, letní semestr, volitelný všeobecný
obor BK-AMT , 3 ročník, letní semestr, volitelný všeobecný
obor BK-SEE , 2 ročník, letní semestr, volitelný všeobecný
obor BK-SEE , 3 ročník, letní semestr, volitelný všeobecný
obor BK-MET , 2 ročník, letní semestr, volitelný všeobecný
obor BK-MET , 3 ročník, letní semestr, volitelný všeobecný
obor BK-EST , 2 ročník, letní semestr, volitelný všeobecný
obor BK-EST , 3 ročník, letní semestr, volitelný všeobecný - Program EEKR-M1 magisterský navazující
obor M1-TIT , 2 ročník, letní semestr, volitelný všeobecný
obor M1-TIT , 1 ročník, letní semestr, volitelný všeobecný
obor M1-BEI , 2 ročník, letní semestr, volitelný všeobecný
obor M1-BEI , 1 ročník, letní semestr, volitelný všeobecný
obor M1-MEL , 2 ročník, letní semestr, volitelný všeobecný
obor M1-MEL , 1 ročník, letní semestr, volitelný všeobecný
obor M1-EVM , 2 ročník, letní semestr, volitelný všeobecný
obor M1-EVM , 1 ročník, letní semestr, volitelný všeobecný
obor M1-KAM , 2 ročník, letní semestr, volitelný všeobecný
obor M1-KAM , 1 ročník, letní semestr, volitelný všeobecný
obor M1-EEN , 2 ročník, letní semestr, volitelný všeobecný
obor M1-EEN , 1 ročník, letní semestr, volitelný všeobecný
obor M1-EST , 2 ročník, letní semestr, volitelný všeobecný
obor M1-EST , 1 ročník, letní semestr, volitelný všeobecný
obor M1-SVE , 2 ročník, letní semestr, volitelný všeobecný
obor M1-SVE , 1 ročník, letní semestr, volitelný všeobecný - Program EEKR-ML1 magisterský navazující
obor ML1-TIT , 2 ročník, letní semestr, volitelný všeobecný
obor ML1-TIT , 1 ročník, letní semestr, volitelný všeobecný
obor ML1-EEN , 2 ročník, letní semestr, volitelný všeobecný
obor ML1-EEN , 1 ročník, letní semestr, volitelný všeobecný
obor ML1-KAM , 2 ročník, letní semestr, volitelný všeobecný
obor ML1-KAM , 1 ročník, letní semestr, volitelný všeobecný
obor ML1-BEI , 2 ročník, letní semestr, volitelný všeobecný
obor ML1-BEI , 1 ročník, letní semestr, volitelný všeobecný
obor ML1-SVE , 2 ročník, letní semestr, volitelný všeobecný
obor ML1-SVE , 1 ročník, letní semestr, volitelný všeobecný
obor ML1-EST , 2 ročník, letní semestr, volitelný všeobecný
obor ML1-EST , 1 ročník, letní semestr, volitelný všeobecný
obor ML1-EVM , 2 ročník, letní semestr, volitelný všeobecný
obor ML1-EVM , 1 ročník, letní semestr, volitelný všeobecný
obor ML1-MEL , 2 ročník, letní semestr, volitelný všeobecný
obor ML1-MEL , 1 ročník, letní semestr, volitelný všeobecný - Program EEKR-M magisterský navazující
obor M-EST , 1 ročník, letní semestr, volitelný všeobecný
obor M-EST , 2 ročník, letní semestr, volitelný všeobecný
obor M-KAM , 1 ročník, letní semestr, volitelný všeobecný
obor M-KAM , 2 ročník, letní semestr, volitelný všeobecný
obor M-SVE , 1 ročník, letní semestr, volitelný všeobecný
obor M-SVE , 2 ročník, letní semestr, volitelný všeobecný
obor M-MEL , 1 ročník, letní semestr, volitelný všeobecný
obor M-MEL , 2 ročník, letní semestr, volitelný všeobecný
obor M-EVM , 1 ročník, letní semestr, volitelný všeobecný
obor M-EVM , 2 ročník, letní semestr, volitelný všeobecný
obor M-EEN , 1 ročník, letní semestr, volitelný všeobecný
obor M-EEN , 2 ročník, letní semestr, volitelný všeobecný
obor M-TIT , 1 ročník, letní semestr, volitelný všeobecný
obor M-TIT , 2 ročník, letní semestr, volitelný všeobecný
obor M-BEI , 1 ročník, letní semestr, volitelný všeobecný
obor M-BEI , 2 ročník, letní semestr, volitelný všeobecný - Program EEKR-ML magisterský navazující
obor ML-EEN , 1 ročník, letní semestr, volitelný všeobecný
obor ML-EEN , 2 ročník, letní semestr, volitelný všeobecný
obor ML-EVM , 1 ročník, letní semestr, volitelný všeobecný
obor ML-EVM , 2 ročník, letní semestr, volitelný všeobecný
obor ML-BEI , 1 ročník, letní semestr, volitelný všeobecný
obor ML-BEI , 2 ročník, letní semestr, volitelný všeobecný
obor ML-SVE , 1 ročník, letní semestr, volitelný všeobecný
obor ML-SVE , 2 ročník, letní semestr, volitelný všeobecný
obor ML-EST , 1 ročník, letní semestr, volitelný všeobecný
obor ML-EST , 2 ročník, letní semestr, volitelný všeobecný
obor ML-MEL , 1 ročník, letní semestr, volitelný všeobecný
obor ML-MEL , 2 ročník, letní semestr, volitelný všeobecný
obor ML-TIT , 1 ročník, letní semestr, volitelný všeobecný
obor ML-TIT , 2 ročník, letní semestr, volitelný všeobecný
obor ML-KAM , 1 ročník, letní semestr, volitelný všeobecný
obor ML-KAM , 2 ročník, letní semestr, volitelný všeobecný - Program AUDIO-P magisterský navazující
obor P-AUD , 1 ročník, letní semestr, volitelný mimooborový
obor P-AUD , 2 ročník, letní semestr, volitelný mimooborový - Program IBEP-T bakalářský
obor T-IBP , 1 ročník, letní semestr, volitelný všeobecný
obor T-IBP , 2 ročník, letní semestr, volitelný všeobecný
obor T-IBP , 3 ročník, letní semestr, volitelný všeobecný - Program EEKR-CZV celoživotní vzdělávání (není studentem)
obor ET-CZV , 1 ročník, letní semestr, volitelný všeobecný
Typ (způsob) výuky
Přednáška
Vyučující / Lektor
Osnova
2. HTTP chat jako ASP.NET aplikace běžící pod IIS 6.0 (obě aplikace budou ukládat data do SQL Serveru 2000 databáze a měly by být schopné spolupracovat).
3. GUI aplikace využívající COM rozhraní Microsoft Office
Cvičení na počítači
Vyučující / Lektor
Osnova
2. předkompilovaný kód
3. platformová nezávislost, MSIL
4. bezpečný kód
5. web services
6. jazyk C#
7. prvky jazyka, typy
8. třídy, instance, atributy, metody
9. dědičnost, virtuální metody
10. rozhraní, přetěžování, abstraktní třídy
11. zprávy, události, rozhraní
12. prvky grafického rozhraní
13. okna, menu, ovládaccí prvky, ...
14. grafika
15. síťové aplikace, TCP/IP
16. komunikace TCP, UDP
17. síťové služby
18. přehled ADO.NET a přístup k datům
19. SQL dotazy, DataSet, DataTable, ...
20. aktivní webové stránky ASP.NET
21. formuláře, aktivní obsah, XML
22. integrace do web serveru (IIS 6.0)
23. web services