Welche Vorteile bietet .NET Core?

Tipps & Tricks: bestehenden Code nach .NET Core portieren
Kommentare

Bereits vor drei Monaten wurde der Release Candidate von .NET Core veröffentlicht. Da mittlerweile das RTM-Release von .NET Core immer näher rückt, gibt Microsoft Entwicklern jetzt vorab Tipps und Tricks zum Portieren von Code nach .NET Core.

Im Zuge des Release-Prozesses von .NET Core kamen von Nutzern vermehrt Fragen zur Portierung ihres bestehenden Codes nach .NET Core auf. Immo Landwerth vom .NET-Engineering-Team erklärt im .NET-Blog, wie eine Portierung funktioniert, welche Apps sich dafür eignen und welche helfenden Tools es gibt. Entwickler, die bereits Erfahrung mit der Migration einer Applikation oder Class-Library nach .NET Core haben, können sich bei Landwerth direkt melden, um einen Erfahrungsaustausch vorzunehmen.

Features und Vorteile von .NET Core

Das RTM-Release von .NET Core soll aus drei Applikationsmodellen bestehen. Dazu gehören die ASP.NET-Core-Apps und -Services sowie die Universal Windows Platform (UWP) Apps und die Console Apps. Eine Portierung zu einem der drei Modelle soll verschiedene Vorteile bieten, darunter unter anderem bei Core- und Console-Apps die Möglichkeit, eigene Apps plattformübergreifend einzusetzen. Auch die UWP-Apps bieten Entwicklern neue Optionen, da sie sich für alle Windows-Geräte gleichermaßen eignen.

Im Übrigen liegt ein weiterer Vorteil der Portierung nach .NET Core in den mit dem .NET Framework geteilten APIs. Dadurch wird das Erstellen von Class-Libraries, die gleichzeitig in .NET Core und .NET Framework laufen, vereinfacht. Allerdings ist zu beachten, dass sich das .NET Framework und .NET Core auch in einigen Punkten unterscheiden: So ist zum Beispiel .NET Core im Gegensatz zum .NET Framework NuGet-basiert, in Schichten aufgebaut und – laut Microsoft – frei von problematischer Technologie.

Apropos problematische Technologie: Die .NET-Plattform existiert seit beinahe 15 Jahren und wurde in dieser Zeit mit einer Menge verschiedenster Technologien versorgt. Einige von diesen sind aber nun nicht mehr zeitgemäß und haben es aus diesem Grund auch nicht mehr in .NET Core geschafft. Dazu gehören zum Beispiel AppDomains, Remoting, Sandboxing und binäre Serialisierung.

Nach .NET Core portieren

Bevor man aber mit dem Portieren nach .NET Core beginnt, rät Immo Landwerth zur Nutzung von API Port für die Binaries. Das Tool zeigt an, wie viel Prozent des eigenen Frameworks nach .NET Core portierbar sind und erstellt eine Liste von nicht-portierbaren APIs. Wie API Port genau funktioniert, zeigt folgendes Video von Channel 9:

Für eine Portierung gibt es drei Ansätze: Co-Evolution, Migration und „Start from scratch“. Der erste Ansatz meint, dass bestehende .NET-Framework-Assets erhalten bleiben und gleichzeitig der Vorteil der .NET-Core-App-Modelle genutzt wird – also das Teilen von Funktionalitäten zwischen .NET Core und .NET Framework. Im Fall einer Migration wird eine bestehende Applikation komplett in ASP.NET Core integriert. Der dritte Ansatz meint das Erstellen einer App direkt für .NET Core. Allerdings müssen häufig Samples oder Snippets verwendet werden, die für .NET Framework gedacht waren – also sollte man auch hierfür wissen, wie man Code für .NET Core optimiert.

Eine ausführliche Anleitung zur Umsetzung der Portierungsmöglichkeiten gibt Immo Landwerth in oben genanntem Blogpost. Dort finden sich auch weitere Informationen zu .NET Core und .NET Framework.

 

Aufmacherbild: Professional mover and moving van will help you move to a new home von Shutterstock / Urheberrecht: Aleutie

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -