Schulung .NET-Softwarearchitektur (Architektur von .NET-Anwendungen)

Beschreibung/Inhalt

Dieses Schulungsmodul verbindet eine Vorstellung und Diskussion allgemeiner Architekturprinzipien mit der konkreten technischen Umsetzung in .NET durch Bibliotheken und Werkzeuge.

WICHTIGER HINWEIS: Wir können das Thema ".NET-Softwarearchitektur" auch als einen Beratungseinsatz an Ihren konkreten Aufgabenstellungen durchführen. Häufig ist dies zielführender als eine allgemeine Schulung zu diesem Thema.

# Architekturmuster mit .NET

  • Monolith / Big Ball of Mud
  • Schichtenbasierte Architekturen

  • Logische vs. physische Schichten
    2-Tier
    3-Tier
    N-Tier
  • Microkernel-Architekturen
  • Pipeline-Architektur
  • Eventbasierte Architekturen
  • Space-based architecture (SBA)
  • Serviceorientierte Architekturen (SOA)
  • Microservices
  • Webarchtitekturen
  • Desktoparchitekturen


  • # .NET-Techniken für mehrschichtige Architekturen
  • Web-Benutzeroberflächen mit .NET
  • Desktop-Benutzeroberflächen mit .NET
  • Mobile Anwendungen (Apps) mit .NET
  • Geschäftslogik mit .NET
  • Datenzugriff/Ressourcenzugriff mit .NET


  • # Komponentenorientierung
  • Verschiedene Arten von Softwarekomponenten in .NET
  • Schnittstellen
  • Dependency Injection
  • Versionierung
  • Projektorganisation
  • Deployment


  • # Modularisierung, Lose Kopplung, Austauschbarkeit und Erweiterbarkeit
  • Basismechanismen: Assemblies, Reflection
  • Managed Add-In Framework (MAF)
  • Managed Extensibility Framework (MEF)
  • Dependency Injection/Inversion of Control mit DI-Frameworks wie Microsoft.Extensions.DependencyInjection, StructureMap, AutoFac oder Unity Container
  • Dynamische Sprachen / Dynamic Language Runtime (DLR)
  • Integration von Skript- und Makrosprachen


  • # Benutzerschnittstellenarchitektur
  • Model View Controller (MVC )
  • Model View Presenter (MVP)
  • Model View ViewModel (MVVM)
  • Modulare UI-Architektur (z.B. Prism)


  • # Verteilte .NET-Anwendungen (Client/Server)
  • Synchrone Kommunikation
  • Asynchrone Kommunikation
  • Serviceorientierte Kommunikation vs. REST
  • Enterprise Service Bus-Systeme (ESB)
  • Techniken für Microservices
  • Cloud Computing


  • # .NET Application Server
  • Sicherheit
  • Skalierbarkeit
  • Verteilte Transaktionen
  • Überwachung


  • # Deployment von Anwendungen
  • XCopy-Deployment
  • Installationen mit installutil.exe u.a. Werkzeugen
  • Click-Once-Deployment (.NET- und VSTO-Anwendungen)
  • Microsoft Installer (MSI) / Windows Installer
  • Windows Installer XML (WiX)
  • MSDeploy
  • Container


  • # Interoperabiliät
  • .NET <-> .NET
  • .NET <-> COM
  • .NET <-> C++
  • optional: .NET <-> Java
  • optional: .NET <-> CORBA


  • # Leistung
  • Multithreading/Parallelisierung
  • Caching/Pooling
  • Datenzugriffsperformance
  • Best Practices


  • # Sicherheit
  • Abschottung von Code/Sandboxing
  • Sichere Übertragung
  • Authentifizierung
  • Single-Sign-On
  • Zugriffsrechte


  • # Visual Studio aus Softwarearchitektensicht - Vorgaben und Richtlinien für die Softwareentwickler
  • Anpassungsmöglichkeiten von Visual Studio
  • Visual Studio-Einstellungen weitergeben
  • Einsatz von Projektvorlage
  • Einsatz von Elementvorlagen
  • Einsatz von Code Snippets
  • Einsatz von Codeanalyse-Regeln
  • Einsatz von NugGet-Paketen

  • Dauer
    Auf Wunsch. Gerne geben wir Ihnen eine Empfehlung zur notwendigen Schulungsdauer, wenn Sie uns in der Anfrage Ihre Vorkenntnisse und Ziele nennen.
    Ort
    Online oder in Deutschland, Österreich und der Schweiz an Ihrem Firmensitz
    Schulungsdidaktik
    Nach Ihrer Wahl: Klassische Schulung mit PC-Übungen, reine Präsentation ohne PC-Übungen oder interaktiver Workshop mit Beratungsanteil