Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Technical Keynote: Auf dem Weg zu „One .NET“ – das eine Framework, sie alle zu beherrschen

Technical Keynote: Auf dem Weg zu „One .NET“ – das eine Framework, sie alle zu beherrschen

Im November 2020 ist .NET 5.0 erschienen. Auch wenn die Vision "One .NET" erst mit Version 6.0 vollständig umgesetzt sein wird, so bietet .NET 5.0 doch viele spannende Neuerungen bei Sprachsyntax, Klassen, Anwendungsmodellen und Deployment. In dieser technischen Keynote wird DOTNET-DOKTOR Holger Schwichtenberg zusammen mit Kollegen einige Highlights der neuen Version hervorheben, Empfehlungen zur Migration alter Anwendungen geben und auch einen Ausblick auf die .NET-Zukunft liefern.

7e0087a19318ded4ba2203187694740f?s=128

Christian Weyer
PRO

February 16, 2021
Tweet

Transcript

  1. Blazor in .NET 5 Sanfte Evolution Christian Weyer https://thinktecture.com/christian-weyer @christianweyer

    CTO, Mitgründer @ Thinktecture AG
  2. 2 § Blazor Server und Blazor WebAssembly (WASM) § Blazor

    war schon immer als WASM-Variante für SPAs gedacht, geplant und realisiert § Für .NET-Entwickler Blazor in .NET 5 Sanfte Evolution Blazor: Webtechnologie für .NET-Entwickler
  3. 3 § Alles auf dem Server, nichts auf dem Client

    § Ignoriert das Web völlig § „X11 für .NET-Entwickler“ § Ziemlich verquere Technologiearchitektur, um… § einen strategischen Nachfolger für WebForms präsentieren zu können § den Zeitraum bis zu einem sinnvollen Zustand von Blazor WASM zu überbrücken § Probleme, exemplarisch § Dependency Injection funktioniert nicht wie gewohnt (v.a. bei EF) § Kritisches State-Management § Doppeltes Rendering beim Startup § Mikro-Architektur: saubere Schichtentrennung wird nicht erzwungen § Wenn man es möchte, ist der RAD-Vorteil von Blazor Server schnell weg Blazor in .NET 5 Sanfte Evolution Blazor Server: Server-side Rendering - ganz anders
  4. 4 § Offline-fähige Smart Clients im Browser § Fullstack .NET-Entwicklung

    End-to-End § Blazor WASM 3.2 basierend auf .NET Core 3.1 war „OK“ – eine typische V1 § Sanfte Evolution von Blazor WASM in .NET 5 § Auch weil WASM als Basistechnologie noch Potenzial ist § Evolutionsprozess von Blazor WASM fühlt sich ähnlich an wie der von Angular (2+) § Allerdings mit einer signifikanten Abhängigkeit zu WASM § Blazor WASM wird offiziell im Mai 2021 1 Jahr alt § Angular wird im September 2021 5 Jahre alt Blazor in .NET 5 Sanfte Evolution Blazor WASM: SPAs für .NET-Entwickler
  5. 5 Performance improvements Debugging improvements CSS isolation Microsoft Identity v2.0

    and MSAL v2.0 New InputFile component WASM prerendering New InputRadio and InputRadioGroup components Trimming/linking improvements Component virtualization Browser compatibility analyzer ontoggle event support Lazy load assemblies Set UI focus in Blazor apps Updated globalization support Custom validation class attributes Form components support display name IAsyncDisposable support Catch-all route parameters JavaScript isolation and object references Blazor in .NET 5 Sanfte Evolution Überblick: Blazor-Neuerungen in .NET 5 https://docs.microsoft.com/en-us/aspnet/core/release-notes/aspnetcore-5.0?view=aspnetcore-5.0#blazor ✅ ✅ ✅ ✅ ✅
  6. 6 Blazor in .NET 5 Sanfte Evolution DEMO File Input

    Isolated JavaScript Interop IAsyncDispsoable Scoped CSS https://github.com/thinktecture/blazor-wasm-things-to-know/tree/main/VideoPlayer
  7. 7 Blazor in .NET 5 Sanfte Evolution DEMO WASM Prerendering

    https://github.com/thinktecture/blazor-wasm-things-to-know/tree/main/Prerendering
  8. 8 Blazor in .NET 5 Sanfte Evolution Blazor heute in

    .NET 5 Blazor WebAssembly ermöglicht SPAs mit C# und .NET Standard. Man muss Web, SPA, Security etc. kennen und können. Und auch JavaScript. Blazor ist jung und unreif. Technische Basis, Anwendungsgröße und fehlende Features sind zu beachten. Das Ökosystem ist am entstehen. Im Open- Source- wie im kommerziellen Umfeld. Das moderne Web mit PWA & Web Components funktioniert gut mit Blazor WASM zusammen. Vorsicht bei Blazor Server. Abstrahiert das Web auf unnatürliche Weise. Zustandsbehaftetes Ausführungsmodell.