Detail předmětu

Programování v .NET a C#

FEKT-XPC-MW5Ak. rok: 2021/2022

Ú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

čeština

Počet kreditů

5

Garant předmětu

Výsledky učení předmětu

Schopnost navrhovat a implementovat aplikace a distribuované systémy na platformě .NET.

Prerekvizity

Schopnost programování

Plánované vzdělávací činnosti a výukové metody

Metody vyučování závisejí na způsobu výuky a jsou popsány článkem 7 Studijního a zkušebního řádu VUT.

Způsob a kritéria hodnocení

Podmínky pro úspěšné ukončení předmětu stanoví každoročně aktualizovaná vyhláška garanta předmětu.

Osnovy výuky

1. Úvod do platformy .NET – práce s pamětí, CLR, typová bezpečnost, assembly
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ískat přehled o technologii .NET a programování v C#.

Zařazení předmětu ve studijních plánech

  • Program BPC-AMT bakalářský, libovolný ročník, letní semestr, volitelný
  • Program BPC-IBE bakalářský, libovolný ročník, letní semestr, volitelný
  • Program BPC-TLI bakalářský, libovolný ročník, letní semestr, volitelný

  • Program MPC-AUD magisterský navazující

    specializace AUDM-ZVUK , libovolný ročník, letní semestr, volitelný

  • Program MKC-EEN magisterský navazující, libovolný ročník, letní semestr, volitelný
  • Program MPC-EEN magisterský navazující, libovolný ročník, letní semestr, volitelný
  • Program MPC-EAK magisterský navazující, libovolný ročník, letní semestr, volitelný
  • Program MKC-EKT magisterský navazující, libovolný ročník, letní semestr, volitelný
  • Program MPC-EKT magisterský navazující, libovolný ročník, letní semestr, volitelný
  • Program MPC-EVM magisterský navazující, libovolný ročník, letní semestr, volitelný
  • Program MKC-EVM magisterský navazující, libovolný ročník, letní semestr, volitelný
  • Program MPC-KAM magisterský navazující, libovolný ročník, letní semestr, volitelný
  • Program MPC-MEL magisterský navazující, libovolný ročník, letní semestr, volitelný
  • Program MPC-SVE magisterský navazující, libovolný ročník, letní semestr, volitelný
  • Program MKC-TIT magisterský navazující, libovolný ročník, letní semestr, volitelný
  • Program MPC-TIT magisterský navazující, libovolný ročník, letní semestr, volitelný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

1. TCP chat jako Windows GUI aplikace
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

26 hod., povinná

Vyučující / Lektor

Osnova

1. úvod do platformy .NET
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