Umgebung für Cross-Plattform-Entwicklung: Visual Studio 2015 und .NET 4.6 sind fertig

Die neue Version von Microsofts Entwicklungsumgebung ist erschienen. Sie enthält etliche Neuerungen für .NET-, C++-, JavaScript- und UI-Entwickler und ist mit der Einbindung mehrerer 3rd-Party-Tools ein Beleg für die neue Offenheit des Softwarekonzerns.

 –  263 Kommentare
Visual Studio 2015 und .NET 4.6

Microsoft hat im Rahmen der virtuellen Konferenz "Visual Studio 2015 Final Release Event" Visual Studio 2015 und .NET 4.6 veröffentlicht. .NET Core 5.0 und das dazugehörige ASP.NET 5.0 verbleiben aber weiterhin in der Beta-Phase.

Visual Studio 2015 gibt es in den kommerziellen Varianten Professional und Enterprise sowie den kostenfreien Varianten Community und Express. Die Enterprise Edition ersetzt die bisherigen Produktvarianten Premium und Ultimate. MSDN-Abonnenten mit Visual Studio 2013 Premium oder Ultimate werden kostenfrei auf Visual Studio 2015 Enterprise umgestellt.

Die kostenfreie Community-Variante entspricht funktional weitgehend der Professional Edition; insbesondere kann der Entwickler beliebige Add-ons installieren, was mit den Express-Editionen weiterhin nicht möglich ist. Lizenzrechtlich ist Visual Studio Community auf Open Source-Entwicklung, Lehre, Schulungen sowie maximal fünf Entwickler in Unternehmen beschränkt, die weniger als 250 Mitarbeiter und zugleich weniger als eine Million US-Dollar Umsatz machen.

Einen Funktionsumfangsvergleich aller Varianten von Visual Studio 2015 findet man auf einer Microsoft-Vergleichsseite. Gegenüber dem am 29. April veröffentlichen Release Candidate sind keine neuen Funktionsbereiche mehr hinzugekommen; Microsoft hat aber an vielen Stellen die Implementierungen abgerundet und Fehler beseitigt.

Vorherrschendes Thema bei den Neuerungen in Visual Studio 2015 ist die Cross-Plattform-Entwicklung für Android und iOS. Die Entwicklungsumgebung unterstützt nun sowohl Cross-Plattform-Apps via C++ mit OpenGL ES als auch JavaScript mit HTML (via Apache Cordova) und .NET/C#/Visual Basic mit XAML (via Xamarin Starter Edition).

Auch einen schnellen Android-Emulator liefert Microsoft mit. Für Übersetzung und Debugging von iOS-Anwendungen ist hingegen ein Mac-OS-X-Rechner mit der Apple-Entwicklungsumgebung Xcode notwendig, der als Remote Build Host in Visual Studio 2015 zu konfigurieren ist. Für die Entwicklung von Windows-10-Apps ist die Installation von Visual Studio 2015 auf einem Windows-10-System und das Windows 10 SDK erforderlich; dessen endgültige Version wird am 29. Juli zusammen mit dem Betriebssystem erscheinen.

Während der Android-Emulator selbst entwickelt ist, bedient sich Microsoft zahlreicher Drittanbieter-Werkzeuge, die im Rahmen der Visual-Studio 2015-Installation mit "3rd Party" gekennzeichnet sind. Dazu gehören neben Xamarin und Apache Cordova auch das Android SDK, Apache Ant, Java Standard Edition (Java SE), Node.js, Git und GitHub sowie die PowerShell Tools für Visual Studio.

Nicht explizit im Setup aufgeführt sind Node Package Manager, Bower und Grunt; diese Werkzeuge verwendet Microsoft in ASP.NET-5.0-Webprojekten. Alternativ zu Grunt können Entwickler auch Gulp als Task Runner in Visual Studio 2015 einsetzen.

Als Programmiersprache liefert Microsoft in Visual Studio 2015 neben C++, C#, Visual Basic .NET, F#, Transact SQL, JavaScript und TypeScript erstmals auch Editor-Unterstützung und Projektvorlagen für Windows PowerShell und Python (IronPython) mit.

Im Editor liefert Microsoft erstmals Refactoring-Funktionen für C++ und Visual Basic .NET sowie ein erweitertes Refactoring für C#. Alle Refactoring-Funktionen sind nun mit einer Glühlampe am linken Rand des Editor-Fensters gekennzeichnet. Entwickler können Refactoring-Funktionen über eine XML-basierte Ruleset-Datei deaktivieren. Die Entwicklung eigener Refactoring-Funktionen für C# und Visual Basic ist auf Basis der im Projekt Rosyln neu entwickelten Sprachcompiler deutlich einfacher als bisher.

Im JavaScript-Editor bietet Visual Studio 2015 bessere IntelliSense-Eingabeunterstützung für die beliebten JavaScript-Bibliotheken AngularJS und RequireJS sowie neue Browser-APIs. Verbesserte Eingabeunterstützung und Schemavalidierung gibt es auch für den JSON-Editor, insbesondere für die JSON-basierten Paketdateien von Node Package Manager und Bower.

Im Debugger hat Microsoft zentrale Funktionen wie die Konfigurationsdialoge für Haltepunkte und die Reaktion auf Laufzeitfehler überarbeitet. Die Debugger-Fenster "Watch" und "Immediate" können nun erstmals auch LINQ- und Lambda-Ausdrücke auswerten.

Eine neue Funktion "Perftips" zeigt während des Debuggings die Ausführungszeit zwischen zwei Schritten an. Neu ist auch das Fenster "Diagnostics Tools", das während des Debuggings den Speicherverbrauch und die CPU-Auslastung visualisiert. Bei XAML-basierten Anwendungen können Entwickler nun beim Debugging den aktuellen Steuerelementbaum sehen und verändern. Zudem können XAML-Entwickler mit dem "XAML UI Performance Timeline Analysis Tool" die Auslastung des UI-Threads analysieren.

Aus dem Microsoft Research-Projekt PEX ist die Funktion "Intellitest" hervorgegangen, die in Visual Studio 2015 automatisch Testfälle für Methoden mit geeigneten Parameterwerten generiert.

Der Team Foundation Server 2015 verbleibt in dem am 13. Juli erreichten Status "Release Candidate 2". Die größten Neuerungen hier sind ein neues, auf dem JSON-Format basierendes plattformneutrales Build-System und die lange von Entwicklern vermisste Möglichkeit, TFS-Projekte nachträglich umzubenennen.

Außerdem rüstet Microsoft viele Funktionen auch für den lokalen TFS nach, die in den letzten Monaten auf Visual Studio Online bereits für die Cloud-Variante des TFS erschienen sind. Dazu gehören REST-APIs und viele Funktionen für die agilen Projektverwaltungswerkzeuge.

Visual Studio 2015 enthält ebenso wie das für den 29. Juli angekündigte Windows 10 die Version 4.6 des .NET Framework. Hierin enthalten sind die Sprachcompiler C# 6 und Visual Basic 14. Zu den hervorhebenswerten Neuerungen in beiden Sprachen gehört der Operator ?., der im Gegensatz zu dem einfachen Punkt-Operator keinen Laufzeitfehler auslöst, wenn der Ausdruck vor dem Punkt "null" beziehungsweise "nothing" liefert.

Mit String Interpolation können Entwickler die Zusammensetzung von Zeichenketten aus festen und variablen Bestandteilen übersichtlicher realisieren. Zudem kann man nun automatische Properties, für die keine explizite Felddeklaration gibt, direkt im Rahmen der Deklaration auch mit einem Wert initialisieren und auch automatische Properties schaffen, die nach ihrer Initialisierung unveränderbar sind.

Darüber hinaus bietet das .NET Framework 4.6 einen schnelleren Just-In-Time-Compiler für 64-Bit-Anwendungen, einen speichereffizienteren Assembly Loader und einige kleinere Neuerungen in der .NET-Klassenbibliothek. Viele dieser Neuerungen sind eine Angleichung an das plattformneutrale .NET Core 5.0 (z. B. Konvertierungsfunktionen zwischen Windows- und Unix-Zeitwerten).

.NET Core 5.0 und darauf aufbauende Frameworks wie ASP.NET 5.0 (inkl. ASP.NET MVC 6.0) und der objektrelationale Mapper Entity Framework 7.0 bleiben auch nach dem Erscheinen von Visual Studio 2015 weiterhin in der Beta-Phase. Mit Visual Studio 2015 RTM können Entwickler dennoch solche Projekte in der Version Beta 5 erstellen.

Siehe dazu auf heise Developer: