.NET 5: de kickstart van jouw .NET migratie

Blog

Op 10 november zag .NET 5 officieel het levenslicht tijdens een driedaags online event. .NET 5 mag met recht een mijlpaal genoemd worden: in het (bijna) 18-jarig bestaan van .NET is dit misschien wel het belangrijkste moment sinds het ontstaan van .NET 1.0.

Waarom is dit zo’n grote mijlpaal?

Met .NET 5 wordt gebroken met het verleden. Tot voor kort werd het .NET Framework (uit 2002) steeds verder ontwikkeld op het bestaande systeem: closed source, Windows only.

.NET 5 is natuurlijk ook niet zomaar ontstaan; het is tenslotte de opvolger van .NET Core 3.1. .NET Core zelf is echter een complete herbouw van .NET en tegelijkertijd alles wat .NET Framework niet is: open source en cross-platform.

Microsoft ❤ Open Source

Die trendbreuk is een aantal jaar geleden ingezet door Satya Nadella en tijdens de Microsoft Build van 2019 nog eens bevestigd: Microsoft ❤ Open Source.

In het tijdperk van Steve Ballmer was dit niet voor te stellen. In de open source wereld werd Microsoft verguisd en ook binnen Microsoft was het niet voor te stellen dat je een presentatie gaf op een Mac.

Dit werd ook pijnlijk duidelijk toen op 4 juni 2018 officieel werd aangekondigd dat GitHub voor 7,5 miljard dollar overgenomen zou worden door Microsoft. Concurrent GitLab zag het aantal geïmporteerde projecten vertienvoudigen. Twee jaar later lijkt de angst dat Microsoft GitHub om zeep zou helpen ongegrond. Microsoft helpt mee aan allerlei open source initiatieven, uiteraard ook hun eigen .NET projecten.

Voordelen van .NET

Zoals aangegeven is .NET 5 open source en cross platform. Het voordeel daarvan is dat er meer mogelijkheden zijn voor hosting. Zelfs binnen Azure kan een .NET webapplicatie op Linux draaien. Cross platform zorgt ook voor meer integratie met andere ontwikkelteams en heb je geen last van “vendor lock-in”: .NET 5 werkt bijvoorbeeld ook op Amazon Web Services (AWS) en de Google Cloud.

Daarnaast zijn er nog meer voordelen, maar één van de belangrijkste naast de bovenstaande, is de performance. .NET 5 is veel sneller dan zijn voorgangers. Meer informatie daarover staat in de zeer uitgebreide blog van Microsoft.

.NET Roadmap

Met .NET 5 houden we één .NET over. .NET Framework, .NET Standard en .NET Core blijven uiteraard werken, maar verdere ondersteuning houdt wel op.

De roadmap voor .NET is voor de komende jaren vastgelegd. Vanaf nu zal er elk jaar een nieuwe .NET versie uitgerold worden. In november 2021 zal .NET 6 uitkomen. Net als andere “even” versies, wordt deze met “Long Term Support” (LTS) geleverd worden.

Ondanks dat .NET 5.0 geen LTS heeft, kan je er wel bedrijfskritische applicaties mee maken. Indien er echter toch terughoudendheid is en er daarom gekozen wordt om te wachten op .NET 6 (met LTS), dan is het zeker niet het moment om af te wachten. Een migratie kan een hele operatie zijn en dan is 11 maanden voorbereiding zeker aan te bevelen en kan .NET 5 als basis dienen.

Een begin kan zijn om business logica onder te brengen in .NET Standard 2.1 class libraries. Dit is namelijk de laatste versie die zowel door .NET Framework als .NET Core / .NET 5 gebruikt kan worden. Door deze transitie te doen, kan oude code blijven werken en kunnen tegelijk de eerste stappen van de migratie worden genomen.

Voorbeeld ASP.NET WebForms

Sommige migraties zijn eenvoudig, omdat de techniek blijft bestaan. Zo is een migratie van ASP.NET MVC naar ASP.NET Core MVC een stuk eenvoudiger te realiseren dan een migratie van ASP.NET WebForms naar een .NET 5 webapplicatie, omdat WebForms niet meer bestaat.

In een eerdere blog heb ik Blazor besproken. Voor developers die nu werken met WebForms is dit een goed alternatief: een lage learning curve en de kennis en expertise is al in huis. En ook Blazor heeft componenten die hergebruikt kunnen worden. Verder kunnen met .NET 5 wel alle moderne technieken gebruikt worden. Unit tests als xUnit en bUnit kunnen gebruikt worden om de huidige functionaliteit te testen in de nieuwe omgeving.

Uiteraard zijn er ook andere mogelijkheden om de WebForms applicatie te migreren naar een andere weboplossing. Daarbij zoeken wij altijd naar een oplossing die het beste past bij de omgeving van onze klant.

.NET 5.0 Migratiescan

ShareValue heeft de kennis in huis om een migratie van een oude .NET versie naar .NET 5 te begeleiden en hier adviezen op te geven. Dit begint met een analyse van het huidige software landschap. Vervolgens brengen we een advies uit, waarbij we ook rekening houden met de impact op de business. Uiteindelijk kunnen we de uitvoering van de migratie samen met de klant realiseren en begeleiden. Wil je hier meer over weten? Neem dan contact met ons op.

Auteur Michiel Developer

Heb je vragen over dit onderwerp of zou je Michiel willen inhuren voor een vergelijkbare opdracht?

Neem contact met ons op

Heb je een .NET expert nodig?

Neem contact met ons op

Zoek je een nieuwe baan?

Bekijk onze vacatures