Zkuste nás kontaktovat
 Doba trvání 35 hodiny

Návrh Školení

Od jazykových dovedností k návrhu řešení

  • Pokročilé funkce jazyka C# a jejich dopad na návrh.
  • Získání záměru návrhu z existujícího kódu.

Analýza požadavků a modelování domény

  • Použití případů, uživatelských příběhů a kritérií přijetí.
  • Návrh doménových modelů a univerzální jazyk (ubiquitous language).

Principy softwarového návrhu

  • Aplikace principů SOLID v řešeních .NET.
  • Spojení (coupling), soudržnost (cohesion) a směr závislostí.

Navrhové vzory pro aplikace .NET

  • Výběr tvorbých, strukturálních a chovacích vzorů.
  • Vzory a anti-vzory v existujícím kódu.

Architektonické styly a technická rozhodování

  • Srovnání vrstvené, hexagonální a čistší architektury (clean architecture).
  • Záznamy architektonických rozhodnutí a analýza kompromisů (trade-offů).

Plánování struktury řešení

  • Organizace řešení a projektů pro velké kódbasy.
  • Modulární monolit versus hranice služeb (service-oriented boundaries).

Moderní C# pro udržovatelný kód

  • Vzorové porovnávání (pattern matching), záznamy (records) a typy s referencemi, které mohou být prázdné (nullable reference types).
  • Generika, LINQ a funkcionální kompozice.

Práce s výjimkami, logování a pozorovatelnost

  • Strategie výjimek a kontrakt chybových stavů.
  • Strukturované logování, korelace a kontroly zdraví (health checks).

Reflexe, atributy a meta-programování

  • Návrh řízený atributy a využití reflexe.
  • Generátory zdrojového kódu a generování kódu v době kompilace.

Základy ASP.NET Core

  • Model hostování, injekce závislostí a konfigurace.
  • Žádostní pipeline, middleware a filtry.

Návrh REST API

  • Modelování zdrojů a sémantika HTTP.
  • Verziování, validace a chybové odpovědi.
  • Kontrakty API pomocí OpenAPI.

Zabezpečení aplikací .NET

  • Autentizace a autorizace pomocí OpenID Connect.
  • Autorizace na základě politik a správa tajných hodnot (secrets management).

Modelování hrozeb a bezpečný návrh

  • Modelování STRIDE a hranice důvěry (trust boundaries).
  • Revize bezpečného návrhu před implementací.

Přístup k datům pomocí Entity Framework Core

  • Modelování entit a vztahů.
  • Životní cyklus DbContext a strategie migrací.

Výkon dotazů a datová architektura

  • Strategie načítání a pasti předčasného načítání (eager loading).
  • Transakce, tokeny konkurence a obcházení EF.

Konkurence a asynchronní programování

  • Úlohy (Tasks), TPL a pasti konstrukce async/await.
  • Synchronizace, zrušení a bezpečnost vláken (thread safety).

Optimalizace výkonu

  • Profílování a benchmarkování pomocí BenchmarkDotNet.
  • Paměť, alokace a sbírka nepoužité paměti (garbage collection).
  • Strategie ukládání do mezipaměti (caching) a testování zatížení.

Strategie testování napříč vrstvami

  • Hranice mezi unit, integračním a end-to-end testováním.
  • Testovatelná architektura a testovací dvojnici (test doubles).

Nasazení a provozní připravenost

  • Kontejnery, konfigurace a pipeline CI/CD.
  • Diagnostika produkčního prostředí a bezpečnost vydávání.

Závěrečný projekt: Revize návrhu a implementace

  • Architektonická revize ukázkové aplikace.
  • Implementace a refaktorizace funkčního úseku (feature slice).

Požadavky

  • Zkušenosti s programováním v jazyce C#
  • Funkční znalosti objektově orientovaného programování
  • Základní znalosti SQL a relačních databází

Cílová skupina

  • Vývojáři .NET
  • Softwaroví inženýři a techničtí vedoucí
  • Vývojáři, kteří se posouvají do rolí zaměřených na návrh aplikací

Počet účastníků


Cena za účastníka

Reference (4)

Nadcházející kurzy

Související kategorie