Programuj v jazyce C#
Jediný online kurz C# programovaní, který posune tvé vývojářské skills na next level!
MARTIN HOLÝ
Senior Software Engineer
Vendavo CZ
-
V kurzu si důkladně vysvětlíme interface IEnumerable, knihovnu LINQ či Entity Framework Core.
-
Čeká tě deep dive do konceptu mikroslužeb v back-endu i front-endu, naprogramuješ vlastní služby a doručíš je pomocí Docker image.
-
Naučíš se principy REST API, jejich implementaci a použití, psaní čistého kódu a navrhování komerčně úspěšných řešení.
- Rezervuj si místo
O kurzu
- TIMELINE:
PŘIPRAVUJEME
- ČEKÁ TĚ:
14 LEKCÍ
- FORMÁT:
živě online
Boostni své teoretické a praktické znalosti programování v jazyce C#. Porozuměj syntaxi a pokročilým datovým objektům. V kurzu programování se naučíš psát srozumitelný kód, navrhovat třídy a používat užitečné knihovny.
KURZ JE VHODNÝ PRO
VZDĚLÁNÍ S r_d
-
1
Personalizovaný feedback od špičkových lektorů
-
2
Real use cases
-
3
Praktická cvičení
-
4
Discord komunita
-
5
Certifikát
-
6
Doživotní záznamy
Program
-
01 Lekce
Začínáme s C#
- Vytvoření první vlastní služby ze šablony
- Představení IDE
- Struktury programu a flow zpracování požadavků
- Základní principy a design patterns (dependency injection, asynchronní programování)
Výstupy z lekce: Umím vytvořit a spustit BE mikroslužbu s využitím asynchronního programování, registrovat objekty do DI kontejneru a chápu klíčová slova async/wait pro asynchronní programování.
-
02 Lekce
Základní principy při návrhu a tvorbě tříd
- Proč a jak používat SOLID a DRY principy při návrhu tříd
- Představení a smysl používání základních návrhových vzorů (Factory, Singleton, Composite, Strategy)
Výstupy z lekce: Zvládnu používat modifikátory viditelnosti, vytvářet smysluplné třídy a aplikovat návrhové vzory při tvorbě objektů v C#.
-
03 Lekce
Datové objekty: anonymní a dynamické třídy
- Jak a proč používat pokročilé datové objekty (anonymní objekty, tuple, triple, dynamické objekty, struktury, nullable referenční typy)
Výstupy z lekce: Dokážu identifikovat a používat pokročilé datové objekty.
-
04 Lekce
REST API: Jak na rozhraní pro komunikaci
- Představení REST API a struktury JSON dokumentu
- Vytvoření controlleru pro zpracování komunikačních požadavků a využití DTO objektů
- Atributy a jejich použití na metodách a třídách
- Vytvoření OpenAPI dokumentu pro zdokumentování veřejného rozhraní
Výstupy z lekce: Umím správně vybrat REST metodu pro různé akce, rozšířit rozhraní a zveřejňovat dokumentaci, která umožňuje získat informace o operacích, jež jsou k dispozici a k vyzkoušení.
-
05 Lekce
Databáze a napojení mikroslužby
- Code-first přístup k databázi pomocí Entity Framework Core
- Napojení mikroslužby na databázi
- Aplikace migrací při úpravě struktury objektů
- Základní operace (CRUD) nad daty v DB
Praktické cvičení: Vytvoř kostru služby, která bude umožňovat hrát hru hledání min, kde půjde založit hru, generovat pole o 10×10 políčkách a evidovat klik na políčko od uživatele.
Výstupy z lekce: Umím vytvářet a číst data, manipulovat s nimi a spojovat je v databázi.
-
06 Lekce
Manipulace s daty
- Představení interface IEnumerable a různé jeho varianty (List, Array, …)
- Jak využívat síly Expressions a LINQ knihovny
- Co je to rekurze, jak ji využít a na co si dát pozor
Praktické cvičení: Na službě z předchozího cvičení zobraz všechna sousedící nulová políčka, pokud uživatel odhalí nulové políčko.
Výstupy z lekce: Umím používat cykly, rekurzi a zvládám základy LINQ operace.
-
07 Lekce
Čas na Q&A: back-end služby
- Shrnutí znalostí ohledně vytvořené BE služby a praktických cvičení
- Zodpovězení otázek
-
08 Lekce
Webové stránky pomocí C#
- Front-end služba za využití frameworku Blazor server
- Představení Razor pages (kombinace HTML a C#) při tvorbě plnohodnotných webových stránek
- Využití knihovny MudBlazor při tvorbě Material Design stránek
Praktické cvičení: Vytvoř front-end aplikaci k hledání min z předchozích cvičení.
Výstupy z lekce: Zvládám vytvořit jednoduché frond-end aplikace pomocí CSS stylů a dokážu najít dokumentaci ke knihovně MudBlazor.
-
09 Lekce
Propojení back-end a front-end služeb
- Jak provolávat z front-end služby veřejné REST API naší back-end služby (načítání a úprava dat ve webové službě)
- Využití DTO objektů při přenosu dat mezi službami
Praktické cvičení: Napoj hledání min webové (front-end) služby na dříve vytvořenou (back-end) službu.
Výstupy z lekce: Přes HTTP klienta umím u vytvořeného front-endu povolat back-end API a umím zpracovat přijatá data, manipulovat s nimi a aktualizovat je.
-
10 Lekce
Unit test: jak na bezchybný kód
- Jak a proč psát unit testy
- Testování (public method, private method, statických metod)
Praktické cvičení: Napiš unit testy na relevantní části kódu služby.
Výstupy z lekce: Vím, jakou část kódu otestovat, a umím napsat vlastní unit test.
-
11 Lekce
Nastavení autentizace a autorizace služeb
- Autentizace a autorizace a jak se tyto pojmy pojí s mikroslužbami
- Jak používat autorizaci ve spojení s veřejným OpenAPI, aby bylo provolávání endpointů stále pohodlné
Praktické cvičení: Zabezpeč BE k aplikaci hledání min pomocí základního způsobu zabezpečení.
Výstupy z lekce: Umím vytvořit zabezpečené API, které omezuje přístup pro oprávněné uživatele, a dokážu rozpoznat a reagovat na identitu přihlašující se k aplikaci.
-
12 Lekce
Jak na komponentové testy
- Jak a proč psát komponentové testy pro BE službu
- Představení pojmu testovací pyramida
Praktické cvičení: Aplikuj komponentové testy na svoje cvičení z předchozích hodin (hledání min).
Výstupy z lekce: Umím provádět black-box testování API, zajišťovat autentizaci a autorizaci v komponentových testech a vytvářet testovací data v testovací databázi.
-
13 Lekce
Docker: jak na dockerizaci BE služby
- Vysvětlení, k čemu je Docker a související DockerFile a Docker image
- Dockerizace BE služby (vytvoření DockerFile pro službu, vytvoření Docker image, spuštění služby na lokálním počítači)
Výstupy z lekce: Mám základní přehled v Dockeru a umím kontejnerizovat služby do Docker image.
-
14 Lekce
Závěrečné Q&A
- Q&A a dodělávky
LEKTOR
MARTIN HOLÝ
Senior Software Engineer, Vendavo CZ
-
V Alza.cz začínal jako správce informačních systémů, kde analyzoval, udržoval a vyvíjel back-endové aplikace a databáze.
-
V současné době pracuje jako Senior Software Engineer ve společnosti Vendavo CZ.
-
Na pozici Senior Team Leader vedl tým a pracoval na modernizaci systémů a věnoval se vývoji systémů a architektur v RENOMIA jako Software Architect a Full Stack Engineer.
-
Zabývá se vývojem business požadavků, od návrhu architektury řešení přes samotnou implementaci až po code-review ostatních vývojářů.
ZÍSKEJ VÍCE INFORMACÍ O KURZU PROGRAMUJ V C#
Vyplň registrační formulář a připoj se k nám! Náš r_d tým se s tebou spojí co nejdříve, abys získal*a všechny potřebné detaily o obsahu kurzu Programuj v C# a jeho ceně.