Januar 2018

Band 33, Nummer 1

Universelle Windows-Plattform: Was gibt es Neues bei der .NET UWP-Entwicklung?

Daniel Jacobson | Januar 2018

Bereits im Oktober 2015 hatte einer von uns das Vergnügen, einen Artikel über die Entwicklung der .NET-UWP (universelle Windows-Plattform) zu verfassen (msdn.com/magazine/mt590967). Seitdem hat sich bei der .NET UWP-Entwicklung viel verändert, und wir wollten diese Änderungen in einem neuen Artikel thematisieren, der Entwicklern hilft, sich über den neuesten Stand zu informieren.

Seit Oktober 2015 hat Microsoft eine neue Version von Visual Studio 2017, mehrere neue SDKs (darunter das neueste Windows 10 Fall Creators Update SDK), das Projekt für das Verpacken von Windows-Anwendungen, die Unterstützung von .NET Standard 2.0, Verbesserungen von NuGet, das neue Fluent-Entwurfssystem, neue Communitytools wie Windows Template Studio und vieles mehr veröffentlicht. Viele dieser Änderungen und Verbesserungen am UWP-Entwicklerökosystem wurden so konzipiert, dass es einfacher wird, Ihre vorhandenen .NET-Ressourcen voranzubringen, Ihre Anwendungsbereitstellungsstrategie unter Windows 10 zu optimieren und Ihre UWP-Entwicklung zu beschleunigen, um so schnell wie möglich großartige Anwendungen zu entwickeln.

Das Windows 10 Fall Creators Update bringt eine Reihe von Verbesserungen für UWP-Entwickler mit Visual Studio 2017 Version 15.5 oder höher, die die beste Unterstützung für das Windows 10 Fall Creators Update SDK (10.0.16299.0) bieten. Zu den wichtigsten Neuerungen gehören neue Funktionen für Unternehmensanwendungen, eine optimierte Anwendungsbereitstellung und die Unterstützung für .NET Standard 2.0 und auch für das neue Fluent-Entwurfssystem. Lassen Sie uns diese Verbesserungen untersuchen.

Neue Funktionen in Windows für Unternehmensanwendungen

Microsoft hat die Notwendigkeit erkannt, die Windows 10-Plattform für Unternehmensentwickler zu verbessern, die Anwendungen für Windows auf Desktop-PCs entwickeln, und hat mit dem Windows 10 Fall Creators Update wichtige Fortschritte in diesem Bereich gemacht.

Das Beste aus UWP und Win32: Microsoft hat die Windows 10-Plattform durch die Desktop-Brücke (aka.ms/desktopbridge) verbessert, um ihre Attraktivität für alle .NET-Entwickler zu erhöhen, und zwar unabhängig davon, ob ihr aktueller Fokus auf UWP, Windows Presentation Foundation (WPF), Windows Forms oder Xamarin liegt. Mit dem neuen Projekttyp für App-Paketerstellung in Visual Studio 2017 Version 15.5 können Sie Windows-App-Pakete für Ihre WPF- oder Windows Forms-Projekte erstellen, genau wie für UWP-Projekte.

Sobald Ihre Anwendung verpackt ist, erhalten Sie alle Vorteile der Windows 10-Anwendungsbereitstellung, einschließlich der Möglichkeit, sie über den Microsoft Store (für Consumeranwendungen), den Microsoft Store für Unternehmen und Bildungseinrichtungen oder über eine Ihrer bevorzugten Anwendungsbereitstellungsoptionen wie Intune zu verteilen. Verpackte Apps haben sowohl Zugriff auf die vollständige UWP API-Oberfläche als auch auf die Win32-APIs auf dem Desktop, sodass Sie Ihre WPF- und Windows Forms-Anwendungen schrittweise mit UWP-APIs und Windows 10-Features modernisieren können. Sie können Ihre Win32-Komponenten auch in Ihre UWP-Apps einbinden, sodass sie auf dem Desktop mit allen Win32-Funktionen brillieren.

Ruhiges Gewissen: Benutzer können Anwendungen ohne Reue und ohne Bedenken installieren, dass sie Malware enthalten. Für Installationen sind keine Administratorberechtigungen erforderlich, und jede Anwendungsinstallation ist von anderen isoliert, was die Verwaltung erleichtert. Deinstallationen sind garantiert sauber, ohne Schäden in der Registrierung oder im Dateisystem oder andere unerwartete Nebenwirkungen bei der Installation von Software. Diese Verteilungsmethode ist nun auch für Ihre WPF- und Windows Forms-Anwendungen verfügbar, die das Projekt für das Verpacken von Windows-Anwendungen verwenden.

Unternehmensfähige Sicherheit: Windows Hello ermöglicht die biometrische Authentifizierung für Geräte und kompatible Anwendungen. Das Windows 10-App-Modell schützt Ihre Daten und den Systemzustand durch UWP-App-Container, die dem Benutzer die Kontrolle darüber geben, welche Aktionen Apps ausführen können und welche nicht. Darüber hinaus müssen Apps ihre Nutzung von Ressourcen wie Standort oder Mikrofon offen legen, die der Benutzer oder IT-Administrator über Datenschutzeinstellungen steuert.

Schließen von Lücken für Desktopanwendungen: Die aktuelle Version des Fall Creators Update hat dazu beigetragen, die API- und Featurelücken zwischen UWP- und Win32-Desktopanwendungen zu schließen. Die Unterstützung von .NET Standard 2.0 hat die verfügbare API-Oberfläche erheblich erweitert und bietet gleichzeitig Zugriff auf viele wichtige NuGet-Pakete, die bisher nicht in UWP-Projekten verwendet werden konnten. Beispielsweise erhalten Unternehmensentwickler endlich Zugriff auf SqlClient-APIs, um direkt mit SQL Server-Datenbanken aus ihren UWP-Projekten zu kommunizieren. Microsoft verbessert auch weiterhin das UWP-App-Modell für Desktop- und Unternehmensszenarien. Neuere Updates haben die Befehlszeilenaktivierung, den automatischen Start und Funktionen für die Ausführung mit voller Vertrauenswürdigkeit oder mit unbeschränkter Ausführungslebensdauer (extendedBackgroundTaskTime und extendedExecutionUnconstrained) aktiviert.

Optimierte Anwendungsbereitstellung

Microsoft ist sich bewusst, dass viele .NET-Entwickler noch immer Windows Forms- und WPF-Anwendungen erstellen. Das Unternehmen will nicht nur die Weiterentwicklung bestehender Ressourcen so einfach wie möglich gestalten, sondern auch ein Problem lösen, mit dem viele Entwickler heute konfrontiert sind: die Bereitstellung. Mit Visual Studio 2017 ist es einfacher denn je, die Desktop-Brücke (aka.ms/desktopbridge) zu nutzen, um vorhandene Win32.NET-Anwendungen zu verpacken.

Sie können Win32-Anwendungen mit dem Projekt für das Verpacken von Windows-Anwendungen sicher an den Microsoft Store übermitteln. Es gibt aber auch viele andere Möglichkeiten, Anwendungen, die als APPX-Datei verpackt sind, zu verteilen. Diese Optionen unterstützen die von vielen Unternehmen geforderte Flexibilität bei der Bereitstellung.

Beginnend mit dem Windows 10 Fall Creators Update können Sie Ihren eigenen APPX-Installer im Web hosten, um den App-Installer automatisch aufzurufen. Es ist so einfach wie das Hinzufügen eines Aktivierungsschemas (ms-appinstaller:?source=) zum Link zu der APPX-Datei im Web. Weitere Informationen finden Sie hier im Blogpost zu direkten Webinstallationen: bit.ly/2mJfIUI. Dieser Ansatz macht es wirklich einfach, Anwendungen innerhalb Ihrer Organisation gemeinsam zu nutzen, indem Sie beispielsweise einen Link zur APPX-Datei auf einer Website veröffentlichen.

Sie können auch App-Installer-Manifestdateien erstellen, um automatische Paketaktualisierungen zu unterstützen. Ein Vorteil, den diese App-Installationstechnologie gegenüber einem Schema wie ClickOnce bietet, besteht darin, dass automatische Updates hinter den Kulissen stattfinden: Die Anwendung kann aktualisiert werden, bevor der Benutzer der Anwendung sie überhaupt startet. Um zu erfahren, wie Sie Ihre eigenen benutzerdefinierten APPINSTALLER-Dateien für automatische Anwendungsupdates in privat gehosteten Bereitstellungskanälen erstellen können, besuchen Sie den folgenden Blog: bit.ly/2z4Fx3A.

Wenn Sie leistungsfähigere Geräteverwaltungstools in Ihrem Unternehmen benötigen, können Sie Ihre Anwendungen mit Microsoft Intune (bit.ly/2B7OnyR) nutzen und verteilen. Das Projekt für das Verpacken von Windows-Anwendungen ist der schnellste Weg, um Ihre Anwendungen einfach über Microsoft Intune zu verwalten.

Nicht zuletzt können Sie Ihre Anwendungen über das Visual Studio App Center verteilen (bit.ly/2AKpsjJ). Visual Studio App Center ermöglicht eine schnelle Bereitstellung für Ihre Entwicklungsteams oder die Betatester Ihrer Anwendung. Sie können auch ganz einfach Analysen aktivieren, um festzustellen, wer Ihre Anwendungen verwendet und wie diese genutzt werden.

Mit dem Projekt für die Paketerstellung von Windows-Anwendungen und so vielen Vertriebskanälen für APPX-Pakete ist es einfach, Ihre Anwendung für jedes Szenario in Ihrem Unternehmen zu verpacken und zu verteilen.

Unterstützung für .NET Standard 2.0

Das Windows 10 Fall Creators Update ist das erste Release von Windows 10, das Unterstützung für .NET Standard 2.0 bietet. Wenn Sie mit .NET Standard nicht vertraut sind, können Sie viele Details unter aka.ms/dotnetstandard erfahren. .NET Standard ist eine Referenzimplementierung der Basisklassenbibliothek, die von jeder beliebigen .NET-Plattform implementiert werden kann, sei es .NET Framework, .NET Core oder Xamarin. Das Ziel von .NET Standard besteht darin, es für .NET-Entwickler so einfach wie möglich zu machen, Code für jede beliebige .NET-Plattform freizugeben, auf der sie arbeiten möchten.

Obwohl es einige Ähnlichkeiten mit dem PCL-Modell (Portable Class Library, portable Klassenbibliothek) gibt, besteht der größte Unterschied zu .NET Standard darin, dass Sie nicht auswählen müssen, welche Plattformen als Ziele verwendet werden sollen. Wenn die Plattform, die Sie als Ziel verwenden, die Basisklassenbibliothek wie im Standard definiert implementiert, wird der gemeinsame Code funktionieren. Ein großer Vorteil von .NET Standard im Vergleich zu PCLs besteht darin, dass Sie bei der Einführung einer neuen .NET-Plattform mit Unterstützung für .NET Standard Ihre gemeinsam genutzten Codebibliotheken nicht ändern müssen, da Sie kein neues Plattformziel hinzufügen müssen. 

Frühe Iterationen von .NET Standard (Versionen 1.x) waren ein großartiger Start, aber mit dem Windows 10 Fall Creators Update und .NET Standard 2.0 hat Microsoft es drastisch vereinfacht, Code über .NET-Plattformen hinweg freizugeben. .NET Standard 2.0 verfügt im Vergleich zu jeder 1.x-Version über ungefähr 20.000 weitere APIs. Darüber hinaus wird .NET Standard 2.0 mit der .NET Framework-Version 4.6.1 unterstützt, sowie UWP-Entwicklung für Entwickler, die das Windows 10 Fall Creators Update als Ziel verwenden. Im Abschnitt „.NET- und UWP-Entwicklung“ werden wir die Details zur Funktionsweise des Ganzen näher erläutern.

Ein weiterer großer Vorteil von .NET Standard 2.0 besteht darin, dass diese Version für viele vorhandene .NET-Anwendungen (egal ob WPF oder Windows Forms) einen Weg nach vorn bietet. Wenn Ihre .NET-Apps .NET Framework 4.6.1 oder höher als Ziel verwenden, können Sie mit der Portierung Ihres CodeBehind in .NET Standard 2.0-Bibliotheken beginnen. Der gleiche Code kann dann auf jeder beliebigen .NET-Plattform, die .NET Standard 2.0 implementiert, verwendet werden. Die .NET Standard-Kompatibilitätsmatrix in Abbildung 1 zeigt, wie sich die Unterstützung versionsübergreifend auswirkt.

.NET Standard-Kompatibilitätsmatrix
Abbildung 1: .NET Standard-Kompatibilitätsmatrix

Dies bedeutet, dass Sie damit beginnen können, Ihren Code in wiederverwendbare Bibliotheken zu portieren, und wenn Sie bereit sind, können Sie den gleichen Code in UWP-Anwendungen, Xamarin-Anwendungen, .NET Core-Anwendungen und mehr gemeinsam nutzen.

Um Sie bei der Ermittlung zu unterstützen, ob Ihr Code API-kompatibel mit .NET Standard 2.0 ist, hat Microsoft ein Portabilitätsanalysetool erstellt, das einen Bericht erstellt, der anzeigt, welche APIs mit jeder .NET-Implementierung kompatibel sind (bit.ly/2zlgrBz). Sie können sich unter bit.ly/2j9TB52 auch ein hilfreiches Channel9-Video von der .NET Conf 2017 ansehen, in dem der gesamte Portierungsvorgang schrittweise durchlaufen wird, von einer Windows Forms .NET-Anwendung bis hin zu einer UWP-Anwendung.

Fluent-Entwurfssystem

Mit der Evolution der Computergeräte und der Entstehung von Mixed Reality war es unerlässlich, dass sich auch das Windows-Entwurfssystem weiterentwickelt. Um diesem Wandel Rechnung zu tragen, hat Microsoft das Fluent-Entwurfssystem (fluent.microsoft.com) veröffentlicht. Dieses System basiert auf fünf Bausteinkonzepten (Licht, Tiefe, Bewegung, Material und Skalierung) und ist so konzipiert, dass es die nächste Generation von UX geräteübergreifend unterstützt.

Mit dem Windows 10 Fall Creators Update können Sie bereits jetzt sehen, wie Fluent-Artefakte ihren Weg in Windows 10 und die Anwendungsentwicklung finden. Eine gute Möglichkeit, den Fluent-Entwurf in Aktion zu sehen, bietet ein Blick auf das XAMLUIBasics-Beispiel in den UWP-Beispielen auf GitHub (bit.ly/2mK4pvH).

Ein weiteres Beispiel (siehe Abbildung 2), das die Fluent-Gestaltungsprinzipien in einem stärker unternehmensorientierten Szenario aufzeigt, finden Sie unter aka.ms/eshopuwp/src. In diesem Beispiel sehen Sie das Acrylmaterial, das im Navigationsbereich eine zusammengesetzte Schicht bildet. Sie können auch Lichteffekte erkennen, die dazu dienen, die Navigationsschaltfläche „Neues Element hinzufügen“ hervorzuheben.

Fluent-Entwurf in Aktion
Abbildung 2: Fluent-Entwurf in Aktion

Verbesserungen an Visual Studio 2017

Es gibt viele Verbesserungen in Visual Studio 2017 im Vergleich zu Visual Studio 2015. Hier stellen wir einige der wichtigsten und wirkungsvollsten neuen Funktionen der IDE vor.

Beginnen wir mit den neuesten Tools: Visual Studio 2017. Eine der Hauptprioritäten von Visual Studio 2017 bestand darin, die Einrichtung so schnell und einfach wie möglich zu gestalten. Sobald Sie mit der Installation von Visual Studio 2017 beginnen, werden Sie sofort Verbesserungen gegenüber Visual Studio 2015 erkennen.

Alles beginnt mit dem Visual Studio-Installer (siehe Abbildung 3), mit dem Sie alle Installationen von Visual Studio 2017 verwalten können. Er unterstützt den szenariogesteuerten Erwerb durch die Einführung von Workloads, die auf das zugeschnitten sind, was Entwickler für die Erledigung ihrer Aufgaben benötigen. Workloads sorgen dafür, dass Sie nur das installieren, was Sie benötigen, und nicht all die zusätzlichen Dinge, die dafür verantwortlich waren, dass die Installation von Visual Studio 2015 oft so lange dauerte. Darüber hinaus können Instanzen von Visual Studio 2017 parallel installiert werden, sodass Sie Previewversionen (visualstudio.com/vs/preview) und Verkaufsversionen (visualstudio.com) auf dem gleichen Computer installieren können. So können Sie die neuesten und besten Features testen, ohne Ihre Produktionsumgebung zu beeinträchtigen.

Visual Studio-Installer
Abbildung 3: Visual Studio-Installer

Außerdem kann die SDK-Installation, beginnend mit dem Windows 10 Creators Update (10.0.15063.0), auch parallel eingerichtet werden. Jetzt können Sie sich für das Windows Insiders Program (insider.windows.com) registrieren und Preview-SDKs testen, ohne Ihre Produktionsumgebung zu beschädigen.

Verbesserungen am XAML-Designer

Mit Visual Studio 2017 Version 15.4 wurden einige einschneidende Updates des XAML-Designers eingeführt. Diese Updates konzentrieren sich auf mehrere Entwurfsüberlegungen, einschließlich:

  • Deutlich verbesserte Designer-Leistung.
  • Hochwertige Designer-Oberfläche, die sich vor allem auf das Rendern von Artefakten konzentriert, die durch das neue Windows Fluent-Entwurfssystem eingeführt wurden.
  • Weniger Designer-Ausnahmen, um Ablenkungen zu minimieren und die Entwicklerproduktivität in der Entwurfsoberfläche zu maximieren.
  • Verbesserte Designer-UX, ohne die vorhandene XAML-Entwicklung in Visual Studio und Blend zu unterbrechen oder zu verändern.
  • Aktualisierte Tools, die die Produktivität von Entwicklern maximieren, die Windows-Benutzeroberflächen erstellen.

Diese Updates für den Designer erforderten ein Überdenken der zugrunde liegenden Architektur des Designers. Die Auswirkungen auf Windows-Entwickler bestehen kurzfristig darin, dass Microsoft einen Großteil der Tools, mit denen die Entwickler vertraut sind, neu erstellen muss. Um diese Herausforderung zu meistern, hat Microsoft nur die Updates für den XAML-Designer für UWP-Entwickler freigegeben, die das Windows 10 Fall Creators Update (10.0.16299.0) oder höher als Ziel verwenden. Ausführliche Informationen zu den Updates erhalten Sie unter aka.ms/uwpsiblog.

Projekt für das Verpacken von Windows-Anwendungen

Um die Anwendungsbereitstellung mit Windows 10 zu optimieren, können Sie jetzt einen neuen Projekttyp mit dem Namen Projekt für das Verpacken von Windows-Anwendungen erstellen. Dieses Projekt ermöglicht es Ihnen, Verweise auf Win32-Anwendungen (z.B. Windows Forms und WPF) hinzuzufügen und diese im APPX-Paketformat zu verpacken.

Die Nutzung dieses Projekts ist einfach. Fügen Sie Ihrer Projektmappe einfach ein neues Projekt für die Paketerstellung von Windows-Anwendungen hinzu, und fügen Sie einen Verweis auf Ihre Win32-Anwendung über den Knoten „Anwendungen“ hinzu, wie in Abbildung 4 gezeigt.

WapProj-Demo
Abbildung 4: WapProj-Demo

Um Pakete zu erstellen, klicken Sie mit der rechten Maustaste auf das Projekt für das Verpacken von Windows-Anwendungen, und wählen Sie dann „Store“ > „App-Pakete erstellen“ aus. Die Ausgabe ist eine APPX-Datei, die Sie mit einer der Methoden bereitstellen können, die im Abschnitt „Optimierte Anwendungsbereitstellung“ in diesem Artikel beschrieben werden.

Verbesserungen an NuGet

Mit Visual Studio 2017 nutzen alle .NET UWP-Anwendungen das NuGet-Paketverweismodell für das Hinzufügen von NuGet-Paketen zu Projekten (bit.ly/2AXDDDlz). NuGet-Paketverweise bieten mehrere Vorteile für NuGet-Paketautoren und für NuGet-Paketnutzer.

PackageReference verfügt über eine direkte MSBuild-Integration, die neue Szenarien wie die Paketverwaltung über mehrere Projekte hinweg ermöglicht. Sehen wir uns ein Beispiel an. Angenommen, Sie arbeiten in einem Unternehmen, das über eine Kernbibliothek verfügt, die für alle (oder viele) Projekte freigegeben ist, die Ihr Unternehmen produziert. Wenn ein Update dieser Bibliothek vorgenommen wird, muss jedes Projekt, das dieses Paket verwendet, den Verweis aktualisieren, um die Vorteile der neuesten Version nutzen zu können. Mit PackageReference kann Ihr Unternehmen ein gemeinsames MSBuild-Ziel erstellen, das in jedes Projekt importiert wird. Wenn dann ein Update für Ihre Kernbibliotheken ausgeführt wird, können Sie die Version im benutzerdefinierten MSBuild-Ziel aktualisieren. Jedes Projekt, das dieses MSBuild-Ziel importiert, verweist nun auf die aktualisierte Version der Bibliothek, ohne dass jedes einzelne Projekt aktualisiert werden muss.

Darüber hinaus ermöglicht die MSBuild-Integration bedingte Paketverweise, die eine genauere Kontrolle über Ihre Projektabhängigkeiten ermöglichen. Betrachten wir das gleiche Beispiel, aber jetzt generieren wir eine Debug- und eine Releaseversion der Kernbibliothek. Das freigegebene MSBuild-Ziel könnte bedingte Paketabhängigkeiten angeben, um die Debugversion der Bibliothek in Debugbuilds der Projekte zu verwenden, die die Bibliothek nutzen. Auf diese Weise verfügen Sie über die nicht optimierte Version der Bibliothek, um das beste Debugerlebnis zu bieten. Sie können die bedingte Abhängigkeit so konfigurieren, dass beim Erstellen von Releaseversionen des Projekts auf die Releaseversion der Kernbibliothek umgeschaltet wird.

Schließlich können NuGet-Paketautoren die Verwendung mehrerer Plattformen in einem einzigen NuGet-Paket nutzen. Ein hervorragender Anwendungsfall für mehrere Zielplattformen ist die Veröffentlichung eines einzigen NuGet-Pakets zur Unterstützung aller .NET-Plattformen. Angenommen, Sie haben bereits eine .NET Framework-Bibliothek für NuGet erstellt und verwaltet, die Sie aktualisieren möchten, um .NET Standard 2.0 zu unterstützen. Die neueste Version Ihres NuGet-Pakets kann beide Implementierungen beibehalten, sodass die neueste Version des Pakets immer anwendbar ist, und zwar unabhängig vom jeweiligen Projekt, das sie nutzt. Wenn Sie zum Beispiel eine .NET Framework 4.5-Implementierung und eine .NET Standard 2.0-Implementierung verwenden, kann jede .NET-Anwendung, die .NET Framework 4.5 oder höher als Ziel verwendet oder .NET Standard 2.0 implementiert, das NuGet-Paket verwenden. Bei der UWP-Entwicklung wird die angegebene Plattform mit der TargetPlatformMinVersion Ihres Projekts in Beziehung gesetzt. Wenn Ihre TargetPlatformMinVersion größer oder gleich der im NuGet-Paket angegebenen Plattform ist, kann auf das NuGet-Paket im Projekt verwiesen werden.

In Visual Studio 2015 wurde der .NET Native-Compiler als Teil von Visual Studio ausgeliefert. Obwohl die .NET Core-Implementierung für die UWP-Entwicklung als eine Sammlung von NuGet-Paketen ausgeliefert wurde, sahen sich die Entwickler mit einer leicht fragmenthaften Erfahrung konfrontiert, wenn es um .NET Native ging. Mit Visual Studio 2017 werden alle .NET für UWP-Entwicklungen als Teil der .NET-Implementierung für das UWP NuGet-Paket ausgeliefert, einschließlich .NET Native. Dies gibt Ihnen die Flexibilität, sich in Ihrem eigenen Tempo zu bewegen, indem Sie die Version von .NET angeben, die Sie benötigen und von der Sie wissen, dass sie für Ihre Anwendung geeignet ist.

.NET Standard 2.0 und die UWP-Entwicklung

In diesem Artikel wurde bereits erwähnt, dass .NET Standard 2.0 im Windows 10 Fall Creators Update verfügbar ist. Um die Vorteile der .NET Standard 2.0-Implementierung nutzen zu können, müssen Sie die TargetPlatformMinVersion Ihres UWP-Projekts auf das Windows 10 Fall Creators Update oder höher festlegen, wie in Abbildung 5 gezeigt. Sie müssen außerdem auf das NuGet-Paket „Microsoft.NETCore.UniversalWindowsPlatform“ (Version 6.0 oder höher) verweisen.

Mit .NET Standard 2.0 kompatible UWP-App
Abbildung 5: Mit .NET Standard 2.0 kompatible UWP-App

Das NuGet-Paket „Microsoft.NETCore.UniversalWindowsPlatform“ nutzt die Unterstützung für mehrere Plattformen für die UWP-Entwicklung, sodass Sie eine Aktualisierung auf die neueste Version des Pakets vornehmen können. Wenn Sie eine Anwendung erstellen, die eine TargetPlatformMinVersion aufweist, die kleiner als das Windows 10 Fall Creators Update ist, wird der NuGet-Wiederherstellungsprozess die .NET Standard 1.4-Implementierung von .NET Core für Windows 10 bereitstellen. Wenn Sie TargetPlatformMinVersion auf das Windows 10 Fall Creators Update oder höher festlegen, stellt NuGet die .NET Standard 2.0-Implementierung von .NET Core für Windows 10 bereit. Nun, das war jetzt eine Menge Text, der im Wesentlichen Folgendes für Sie bedeutet: Sie müssen sich keine Gedanken darüber machen, auf welche Version des NuGet-Pakets Sie verweisen müssen. Sie können immer auf die neueste Version verweisen. Das sollte unabhängig von Ihrem Windows 10-Ziel immer funktionieren. 

Hilfreiche Open Source-Projekte

Abschließend möchten wir Ihnen einige hilfreiche Open Source-Projekte vorstellen, mit denen Sie die UWP-Entwicklung beschleunigen können. Dazu gehören Windows Template Studio, das UWP Community Toolkit und die Telerik-Steuerelemente für die UWP-Entwicklung.

Windows Template Studio: Windows Template Studio (siehe Abbildung 6) ist ein dynamischer Vorlagengenerator für die UWP-Entwicklung. Dies ist der schnellste Weg, um mit dem Erstellen einer produktionsbereiten UWP-Anwendung zu beginnen. Das Tool nutzt bewährte Methoden für die Entwicklung und ermöglicht es Ihnen, viele Ansichten, Hintergrundaufgaben und vieles mehr mit einem einfachen Assistenten zu erstellen. Die Verwendung von Windows Template Studio für die gesamte neue Anwendungsentwicklung in einem Unternehmen kann dazu beitragen, ein konsistentes Erscheinungsbild für alle Anwendungen zu gewährleisten und bewährte Methoden für Anwendungsarchitekturen zu fördern. Windows Template Studio wird von einer leidenschaftlichen Community von Windows-Entwicklern entwickelt, verwaltet und aktualisiert und stellt eine großartige Möglichkeit dar, um mit der Erstellung von vollwertigen UWP-Anwendungen (aka.ms/wts) zu beginnen.

Windows Template Studio-Projektgenerierung
Abbildung 6: Windows Template Studio-Projektgenerierung

Telerik-Steuerelemente für die UWP-Entwicklung: Bereits im Februar 2017 gab Telerik bekannt, dass die Telerik-Benutzeroberfläche der Bibliothek für UWP-Steuerelemente als Open Source-Lösung bereitgestellt wird. Die Lizenz ermöglicht die kostenlose Nutzung für alle Benutzer, die UWP-Apps erstellen. Telerik hat eine lange Tradition in der Entwicklung leistungsstarker, performanter, unternehmenstauglicher Steuerelemente, und bei der UWP-Entwicklung können diese jetzt kostenlos verwendet werden! Weitere Informationen zur Open Source-Ankündigung von Telerik finden Sie im Blog des Unternehmens: bit.ly/2AZA0iI.

UWP Community Toolkit: Das UWP Community Toolkit (github.com/Microsoft/UWPCommunityToolkit) ist ein weiteres von der Community getragenes Projekt, das nützliche Tools für die UWP-Entwicklung bereitstellt. Das Toolkit enthält Vorlagen für Animationen, Steuerelemente, Hilfsklassen, Dienste und vieles mehr. Nutzen Sie das UWP Community Toolkit, um Ihre Entwicklung zu beschleunigen.

Schlussbemerkungen

Es liegt auf der Hand, dass sich für .NET- und UWP-Entwickler durch so viele neue Tools und Updates, die die Erstellung von Windows-Anwendungen so schnell und einfach wie möglich gestalten, eine Menge geändert hat. Mit .NET Standard 2.0 und allen verfügbaren kostenlosen Ressourcen war es noch nie so einfach, mit der universellen Windows-Plattform unternehmenstaugliche Anwendungen zu erstellen. .NET-Entwickler können mit der Desktop-Brückenplattform und den aktualisierten Tools leistungsstarke Desktopanwendungen erstellen, die die Vorteile von UWP und Win32 (einschließlich WPF und Windows Forms) nutzen. Microsoft verbessert diese Tools ständig auf der Grundlage Ihres Feedbacks. Wenn Sie also Windows-Anwendungen erstellen, zögern Sie nicht, per E-Mail oder Twitter Kontakt aufzunehmen.


Daniel Jacobsonist Program Manager für Visual Studio und arbeitet an Tools für Entwickler für die Windows-Plattform. Sie erreichen ihn unter dajaco@microsoft.com oder über Twitter: @pmatmic.

Stefan Wickarbeitet als Program Manager für Windows und beschäftigt sich mit der universellen Windows-Plattform. Sie erreichen ihn unter swick@microsoft.com oder über Twitter: @StefanWickDev.

Unser Dank gilt den folgenden technischen Experten von Microsoft für die Durchsicht dieses Artikels: Mike Harsh, Matthijs Hoekstra, Unni Ravindranathan und Ricardo (Rido) Minguez
Unni Ravindranathan ist Program Manager im Visual Studio-Team und konzentriert sich auf die Entwicklung erstklassiger Tools für Entwickler, die Windows-Anwendungen erstellen.

Mike Harsh ist Group Program Manager im Team, das sich mit der Windows-Entwicklerplattform beschäftigt.

Matthijs Hoekstra ist Senior Program Manager im Team, das sich mit der Windows-Entwicklerplattform beschäftigt.


Diesen Artikel im MSDN Magazine-Forum diskutieren