Kom i kontakt

Kursplan

Introduktion till den moderna .NET-plattformen

  • .NET 8-runtime, SDK och överblick över den enhetliga plattformen
  • Jämförelse av .NET Framework, .NET Core och evolutionen av .NET 8+
  • Projektstruktur, målmallar (target frameworks) och grunderna i multi-targeting
  • Inställning av utvecklingsmiljö och verktyg

Modern C# och framtidsinriktade språkpraxis

  • Records, init-only setters och oändringsbara (immutability) mönster
  • Förbättrad pattern matching och switch-uttryck
  • Tillåtna referenstyper (nullable reference types) och kompilärdreven säkerhet
  • Best practice för async/await och minnes effektiv streaming
  • Generisk matematik, statiska abstrakta metoder i gränssnitt och prestandainriktade API:er
  • Förbereda kodbasen för C# 12/13-funktioner på .NET 8

ASP.NET Core-grunder och applikationsbootstrap

  • Host Builder, middleware-pipeline och begäranlivscykel
  • Minimal APIs jämfört med kontrollerbaserade API:er: beslutsfattande kriterier
  • Konfigurationsleverantörer, miljöspecifika inställningar och hantering av hemligheterna (secrets)
  • Statiska filer, routing och slutpunktskonventioner
  • Konfiguration av beroendeinjektionsbehållare och tjänstlevnadstider (service lifetimes)

REST API-design och implementation

  • REST-mognadsmodell, resursmodellering och URI-design
  • HTTP-metoder, statuskoder och innehållsförhandling (content negotiation)
  • Begärandevalidering, modellbindning och integration med FluentValidation
  • Versionsstrategier för offentliga och interna API:er
  • Dokumentation med OpenAPI och Swagger UI
  • Integrations testning av API:er med TestServer och WebApplicationFactory

Företagsklass beroendeinjektion (DI) och invertering av kontroll (IoC)

  • Konstruktörinjection, tjänstlevnadstider och fångade beroenden (captive dependencies)
  • Decorator- och fabrik mönster med den inbyggda behållaren
  • Integration av Scrutor och tredjeparts-DI-bibliotek
  • Modulär tjänstregistrering och funktionbaserad organisation
  • Korsande intressen (cross-cutting concerns) via middleware och filter

Loggning, konfiguration och centraliserad felf hantering

  • Strukturerad loggning med Microsoft.Extensions.Logging och Serilog
  • Loggnivåer, scoping, berikning (enrichment) och sink-konfiguration
  • Fel-middleware och globala felf hanteringspipelines
  • ProblemDetails och RFC 7807-kompatibla felsvar
  • Hälsokontroller, telemetri och observerbarhetskopplingar (hooks)
  • Korrelations-ID:n och förberedelse för distribuerad spårning (distributed tracing)

Mjukvaruarkitektur för företags .NET-lösningar

  • Principer för lagerbaserad, hexagonal och ren arkitektur
  • Byggstenar för domändesign (DDD) i .NET
  • CQRS- och mediator-mönster med MediatR
  • Repository- och enhet-arbetsmönster med EF Core
  • Vertikal skivarkitektur för funktionskohesion
  • Vägning av fördelar och nackdelar mellan monolit, modulär monolit och mikrotjänster

Säkerhet för webbapplikationer och API:er

  • Autentiseringsscheman: JWT, OAuth2, OpenID Connect och cookie-baserade flöden
  • Auktoriseringspolicyer, anspråksbaserad åtkomst och resursbaserade vaktposter
  • Hårdning av HTTPS, HSTS och middleware för säkra header
  • Input-sanitering, output-kodning och motverkande mot OWASP Top 10
  • Rate limiting, CORS-policyer och hantering av anti-forgery-token
  • Hantering av hemligheterna med Azure Key Vault och miljödriven rotation

Kodkvalitet, underhållbarhet och bästa praxis

  • Kodningsstandarder, EditorConfig och dotnet format
  • Statisk analys med Roslyn-analyser och SonarQube-integration
  • Enhetstestning med xUnit, mockning med Moq eller NSubstitute
  • Integrations- och kontraktstestning i CI-pipelines
  • Refactoring-tekniker för långlivade moduler för gamla system
  • Dokumentation, API-kontrakt och praktiker för kunskapsdelning

Moderneringsstrategi: Utvärdering av kod från .NET Framework för gamla system

  • Portföljanalys: klassificera appar efter kritiskhet, komplexitet och affärsnytta
  • Användning av .NET Upgrade Assistant och kompatibilitetsanalysator
  • Identifiera deprecierade API:er, plattformsberoenden och luckor hos tredje parts-leverantörer
  • Windows-specifika API:er och överväganden för WCF-migration
  • Skapa en migrationsroadmap med riskbaserad prioritering

Progressiv migration och teknik för samexistens

  • Strangler Fig-mönstret: successiv ersättning av gamla subsystem
  • API-first-migration: exponering av .NET Framework-domäner via REST-facader
  • Baserad meddelandebrygga med RabbitMQ, Azure Service Bus eller Kafka
  • Samexistens via delad databas och strategier för schemaversioning
  • Körs .NET Framework och .NET 8 sida vid sida i samma infrastruktur
  • Containerisering av moderna komponenter samtidigt som gamla system lämnas på IIS

Praktisk migrationslaboratorie övning och genomgång

  • Tillämpa Upgrade Assistant på ett representativt projekt för gamla system
  • Refaktorisera en Web Forms- eller WCF-tjänst till ASP.NET Core-API:er
  • Implementera DI, loggning och centraliserad felf hantering i den migrerade lösningen
  • Lägga till autentisering och auktorisation till det nya API-ytan
  • Verifiera samexistens genom integrations testning från ände till ände
  • Gå igenom, Q&A och vägledning för moderniseringsplanering efter utbildningen

Krav

  • Erfarenhet av C#-programmering och principer för objektorienterad design
  • Kunskap om webb utvecklingskoncept (HTTP, HTML, CSS, JavaScript-grunder)
  • Grundläggande förståelse för relationella databaser och SQL
  • Tidigare insikt i .NET Framework eller ASP.NET är hjälpsamt men inte obligatoriskt

Målgrupp

  • .NET-utvecklare och arkitekter som förbereder sig för att modernisera gamla .NET Framework-applikationer
  • Mjukvaruingenjörer som går in i företagsroller för .NET-utveckling
  • Tekniska ledare ansvariga för plattformsmigration och planering av samexistens
  • DevOps- och infrastrukturepersonal som stöder livscykeln för .NET-applikationer
 21 Timmar

Antal deltagare


Pris per deltagare

Vittnesmål (2)

Kommande Kurser

Relaterade Kategorier