Kom i kontakt
 Varaktighet 35 timmar

Kursplan

Från språkkunskaper till lösningsskick

  • Avancerade C#-funktioner och deras påverkan på design.
  • Återställning av designintention från befintlig kod.

Kravanalys och domänmodellering

  • Användningsfall, användarberättelser och acceptanskriterier.
  • Domänmodeller och vedermödan (ubiquitous language).

Programvaru-designprinciper

  • SOLID-principer tillämpade på .NET-lösningar.
  • Koppling, kohesion och beroenderiktning.

Designmönster för .NET-applikationer

  • Val av skapande, strukturella och beteendemönster.
  • Mönster och antimönster i befintlig kod.

Arkitekturstilar och teknisk beslutsfattande

  • Jämförelse av lagrad, hexagonal och clean architecture.
  • Arkitekturbeslutsdokument och analys av för- och nackdelar.

Planering av lösningens struktur

  • Organisation av lösning och projekt för stora kodbasen.
  • Modulmonolit jämfört med tjänsteorienterade gränser.

Modernt C# för underhållbar kod

  • Mönsterrapportering, records och nollbara referenstyper.
  • Generics, LINQ och funktionell komposition.

Felhantering, loggning och observabilitet

  • Felstrategier och felkontrakt.
  • Strukturerad loggning, korrelation och hälsokontroller.

Reflexion, attribut och metaprogrammering

  • Attributstyrd design och användningsfall för reflektion.
  • Källkodsgenerering och kompilerings-tids kodgenerering.

Grundläggande ASP.NET Core

  • Värdmodell, beroendeinjektion och konfiguration.
  • Begärningspipeline, middleware och filter.

Design av REST-API:er

  • Resursmodellering och HTTP-semantik.
  • Versionering, validering och felsvar.
  • API-kontrakt med OpenAPI.

Säkerhet i .NET-applikationer

  • Autentisering och auktorisering med OpenID Connect.
  • Policybaserad auktorisering och hantering av hemligheter.

Hotmodellering och säker design

  • STRIDE-modellering och förtroendegränser.
  • Säker designgranskning innan implementation.

Dataåtkomst med Entity Framework Core

  • Modellering av entiteter och relationer.
  • DbContext-livscykel och migrationsstrategi.

Frågeprestanda och dataarkitektur

  • Laddningsstrategier och fallgropar med ägard loading (eager loading).
  • Transaktioner, konkurrenstokens och kringgående av EF.

Konkurrens och asynkron programmering

  • Uppgifter, TPL och fallgropar med async/await.
  • Synkronisering, avbrott och trådsäkerhet.

Prestandaoptimering

  • Profilering och benchmarkning med BenchmarkDotNet.
  • Minne, allokeringar och skräpsamling (garbage collection).
  • Cachestrategier och lasttestning.

Teststrategi över lager

  • Gränser för enhetstester, integrationstester och sluttill-slut-tester.
  • Testbar arkitektur och testdubbel.

Distribution och operativ klarhet

  • Kontainer, konfiguration och CI/CD-pipelines.
  • Produktionsdiagnostik och utgivningssäkerhet.

Avslutande projekt: Designgranskning och implementation

  • Arkitekturgranskning av en exempelapplikation.
  • Implementation och refaktorisering av en funktionell del.

Krav

  • Upplevelser i att programmera på C#
  • Arbetskunskap i objektorienterad programmering
  • Grundläggande kunskap i SQL och relationella databaser

Målgrupp

  • .NET-utvecklare
  • Programvarutekniker och tekniska leads
  • Utvecklare som går över till roller i applikationsdesign

Antal deltagare


Pris per deltagare

Vittnesmål (4)

Kommande Kurser

Relaterade Kategorier