Rückblick: Visual Studio 2015 geht neue Wege

Visual Studio war schon immer ein großes Produkt mit einer Reihe von Funktionen, die mit jeder Veröffentlichung gewachsen sind. Visual Studio 2015 erweitert diesen Trend auf eine Weise, die ich von Microsoft nie erwartet hätte.

Plattformübergreifende Entwicklung mobiler Apps? Aktivieren Sie dieses Kontrollkästchen mindestens zweimal, einmal für Xamarin und einmal für Cordova, mit zusätzlichem Guthaben für portables C ++ und die Integration in Unity.

Plattformübergreifende Server? Aktivieren Sie dieses Kontrollkästchen mindestens dreimal für .Net Core, ASP.Net und Entity Framework sowie Python und Node.js.

Plattformübergreifendes Bearbeiten und Debuggen? Ja. Visual Studio Code läuft unter Mac OS X, Linux und Windows.

Plattformübergreifendes Application Lifecycle Management? Git und GitHub werden unterstützt, und Microsoft hat die Git-Unterstützung in Team Foundation Server erweitert, um eine kontinuierliche Integration mit denselben intelligenten Check-in-Regeln zu ermöglichen, die Team Foundation Server für sein Versionskontrollsystem hat.

Plattformübergreifende Builds? Du hast es. Team Foundation Build arbeitet nicht nur mit Visual Studio Build und MSBuild, sondern kann auch Ant, Gradle, Maven, Android Build, Gulp, Xcode und andere verwenden.

Natürlich unterstützt Visual Studio weiterhin die Entwicklung für Windows und enthält weiterhin alle alten Technologien für Windows-Desktop-Apps, von in C ++ erstellten Konsolen-Apps mit Windows-API-Aufrufen bis hin zu Windows Presentation Foundation-Apps in C # und XAML, die in Blend für entwickelt wurden Visual Studio 2015. Die Definition von Windows wurde jedoch für Windows 10 mit universellen Windows Platform-Apps erweitert. Diese Anwendungen sollen unverändert auf Hardware funktionieren, die von Telefonen über Tablets und Laptops bis hin zu Desktops, Xbox-Spielekonsolen, Augmented-Reality-Headsets, Surface Hubs, Servern und Clouds reicht. Wie gut sich diese besondere Vision auswirken wird, bleibt abzuwarten.

Eine leichte, plattformübergreifende Option: Visual Studio Code

Visual Studio Code ist Teil des Visual Studio-Ökosystems, aber nicht richtig für Visual Studio. Stattdessen handelt es sich um einen kostenlosen plattformübergreifenden Editor, der die Open-Source-Atom Electron-Shell mit einer Reihe von Microsoft-Technologien kombiniert. Ich habe es unter Mac OS X und Windows verwendet und es gefällt mir sehr gut. Es läuft auch unter Ubuntu Linux.

Warum nicht einfach Atom benutzen? Für TypeScript, JavaScript, C # und Visual Basic bietet Visual Studio Code eine hervorragende Sprachunterstützung. Für die anderen 30 unterstützten Sprachen hat Visual Studio Code Parität mit Atom.

Warum nicht das vollständige Visual Studio verwenden? Sie können, wenn Sie eine Windows-Maschine oder eine virtuelle Maschine mit genügend Leistung haben, aber Visual Studio Code ist ein viel leichteres Programm, das schneller startet und weitaus weniger Computerressourcen benötigt.

Neu in Visual Studio 2015

Wie eingangs erwähnt, bietet Visual Studio 2015 umfassende Unterstützung für die plattformübergreifende mobile Entwicklung: Installation und Integration von Apache Cordova, Installation und Integration von Xamarin, portables C ++, ein erweiterter Android-Emulator und Unity-Integration.

Sie können plattformübergreifende Serveranwendungen erstellen und auf Windows- und Linux-Servern bereitstellen sowie auf Mac OS X-Desktops und -Laptops ausführen. Die Serverunterstützung umfasst ASP.Net 5, Python, Node.js und das neue Open Source .NET Core 5 für Windows, Linux und Mac OS X.

In der Windows-Entwicklung gibt es die neue Generation universeller Apps, neue Diagnosetools und neue Designfunktionen. Im Bereich der Produktivität gibt es ein besseres Debugging, einschließlich des Debuggens von Lambdas und der gleichzeitigen Leistungsüberwachung und des historischen Debuggens. Im Editor versorgen die Roslyn-Sprachprozessoren eine Glühbirne mit Strom, die angezeigt wird, wenn und wo ein häufiges Problem im Code auftritt, und bieten automatische Codekorrekturen und ein verbessertes Refactoring. Inzwischen verfügt Visual Studio 2015 über zahlreiche Aktualisierungen der Programmiersprache, darunter C #, Visual Basic, C ++ und TypeScript sowie Erweiterungen für Python und Node.js.

Visual Studio Online und Team Foundation Server 2015 bieten jetzt Erweiterungs-Hooks und die Integration in Trello, Campfire und dergleichen. Die agile Planungsfunktion umfasst Kanban-Boards und Schwimmbahnen. Sie können jetzt schnell Code bearbeiten und festschreiben, direkt in Visual Studio Online und Team Foundation Server. Früher mussten Sie zu Visual Studio oder einem anderen Code-Bearbeitungswerkzeug zurückkehren.

Grundlegendes zu Visual Studio 2015-Editionen

Die Vielzahl der Editionen von Visual Studio 2015 reicht aus, um einem Rezensenten blendende Kopfschmerzen zu bereiten. Die kurze Zusammenfassung:

  • Die Community ist kostenlos. Diese Ausgabe sollte einzelne Entwickler zufriedenstellen, die keine Geschäftsanwendungen erstellen.
  • Pro mit MSDN kostet 1.199 US-Dollar. Diese Ausgabe ist gut für professionelle Entwickler und Teams.
  • Unternehmen mit MSDN kosten 6.119 US-Dollar (viel weniger als Visual Studio Ultimate 2013). Dies ist eine „Enterprise-Lösung mit erweiterten Funktionen für Teams, die an Projekten jeder Größe oder Komplexität arbeiten, einschließlich erweiterter Tests und DevOps“ - mit anderen Worten, sie bietet alles, was Sie brauchen.

Die kostenlosen Express-SKUs sind noch vorhanden, Microsoft schlägt jedoch die Verwendung der kostenlosen Community-Edition vor, die mehr bietet. Test Professional mit MSDN ist noch vorhanden, und Sie können eine Kopie von Visual Studio Team Foundation Server 2015 kaufen.

Visual Studio Code ist ein kostenloser plattformübergreifender Code-Editor (Windows, Linux und Mac OS X), der auf der Open-Source-Atom Electron-Shell basiert und von Roslyn und dem TypeScript-Compiler ausführlich unterstützt wird mehr als 30 Programmiersprachen auf der Ebene der Syntaxhervorhebung und der Klammeranpassung sowie einige auf der Ebene der IntelliSense.

.Net Core 5 ist eine Cloud-optimierte, plattformübergreifende Open Source-Implementierung der .Net-Plattform, die derzeit Linux, Windows und Mac OS X unterstützt. Sie wird auch in Docker-Containern unter Linux ausgeführt. .Net Core ist eine überarbeitete Teilmenge des .Net Frameworks, hat sowohl native als auch CLR-Laufzeiten (Application VM) und unterstützt sowohl Windows Store- als auch ASP.Net-Apps.

Universelle Windows Platform-Apps können nicht nur auf einer Vielzahl von Hardware ausgeführt werden, sondern verwenden auch die schnelle .Net Native-Laufzeit. Sie können zwischen den Sprachen C #, Visual Basic, C ++ und JavaScript (einschließlich Cordova) wählen und Ihre Benutzeroberfläche in XAML, DirectX oder HTML erstellen. Sie können eine Vorschau von XAML-Designs in Visual Studio in einer Reihe von Geräteabmessungen anzeigen, von einem 5-Zoll-Telefon bis zu einem 84-Zoll-Surface Hub. Sie können gerätespezifische Erweiterungen in Universal-Apps verwenden, sofern Sie diese Erweiterungen in Code einschließen, der zur Laufzeit prüft, ob die entsprechenden APIs vorhanden sind. Während Sie XAML in Visual Studio entwerfen können, ist das überarbeitete Blend für Visual Studio 2015 das bevorzugte Tool für das XAML-Design.

Aktualisierte Programmiersprachen

C # 6 und Visual Basic 14 bieten einige willkommene Sprachaktualisierungen, einschließlich nameofAusdrücken, nullbedingten Operatoren, awaitIn- catchund finallyBlöcken sowie Funktionselementen mit Ausdruckskörper.

Standards und portabler Code kennzeichnen die Verbesserungen der C ++ - Sprache, z. B. die Konformität mit den C ++ 11- und C ++ 14-Standards und die Aufnahme einiger C ++ 17-Funktionen. Der C ++ - Compiler verfügt jetzt über schnellere Builds und Verbesserungen für die Codegenerierung und -sicherheit. Ich weiß nicht, ob die Builds jetzt schnell genug sind, um die erweiterten Kompilierungssitzungen zu eliminieren, die C ++ - Codierer häufig zum Brauen von Kaffee, zum Besuchen der Einrichtungen und zum Spielen von Tischtennis verwenden. Es kann lange dauern, eine große Codebasis auf eine neue C ++ - Compilerversion zu portieren und alle erforderlichen Regressionstests durchzuführen.

F # 4.0 wurde offen von den Entwicklern der F # -Community entwickelt, von denen etwa ein Viertel mit Microsoft verbunden sind. Es gibt viele Verbesserungen an der Sprache und den Tools, aber die offensichtlichsten für mich sind das verbesserte IntelliSense und das Debugging.

TypeScript 1.4 und TypeScript 1.5 (Beta) erstellen weiterhin neue Funktionen, um mit mehr JavaScript-Mustern zu arbeiten, umfangreichere Typisierungen zu erstellen und neue ECMAScript 6-Funktionen zu verwenden.

Visual Studio 2015 installieren

Die Installation von Visual Studio ist detaillierter geworden. Ob dies wichtig ist, hängt von Ihren Bedürfnissen ab. Wenn Sie nur eine Teilmenge der Funktionen benötigen, können Sie Ihre Installation beschleunigen und den Platzbedarf verringern. Wenn Sie auf jeden Fall alles installieren möchten, können Sie dies auch sofort tun. Während Sie einer Teilinstallation bei Bedarf Teile hinzufügen können, besagt eine Variation des Murphy-Gesetzes, dass jede Funktion, die Sie ursprünglich nicht installiert haben, zeitkritisch ist, sodass die inkrementelle Installation zum schlechtesten Zeitpunkt erfolgt.

Ich war angenehm überrascht zu sehen, dass Visual Studio sich um die Installation aller Open Source-Abhängigkeiten kümmert, bis hin zu Basisebenen wie der Installation der von Apache Cordova benötigten Android- und Java-SDKs. Die manuelle Installation kann eine frustrierende Übung sein, wenn Sie die falsche Bestellung erhalten.

Sowohl in den Fällen der teilweisen als auch der vollständigen Installation stellte ich fest, dass Visual Studio 2015-Installationen weniger gefährlich und frustrierend sind als frühere Versionen - bis das Windows 10 SDK herauskam. Als ich das Windows 10 SDK installierte, stellte ich fest, dass der XAML Designer (eine seiner cooleren neuen Funktionen) bei einem brandneuen leeren Projekt fehlerhaft war. Ich habe ungefähr einen Tag mit dem Visual Studio-Team verbracht, um das Problem zu beheben. Das SDK hat jedoch in einer anderen Installation einwandfrei funktioniert, sodass es kein weit verbreitetes Problem darstellt. (Update: Es gibt jetzt eine Problemumgehung. Weitere Informationen finden Sie im Abschnitt "Erstellen von Windows Universal-Apps" weiter unten.)

Die Python-Tools in Visual Studio 2015 unterstützen CPython, IronPython, PyPy, Anaconda und andere Python-Compiler. Sie bieten Ihnen IntelliSense im Editor und interaktives Debugging, einschließlich Mixed-Mode (Python / C ++) und OS-Cross-Debugging.

Seit meiner Überprüfung von 7 JavaScript-IDEs haben die Node.js-Tools für Visual Studio, jetzt in Version 1.1 RC, Unterstützung für Visual Studio 2015 (natch) und eine neue Linux-basierte Dockerfile-Vorlage hinzugefügt, um das Aufrufen Ihrer App zu vereinfachen und in einem Docker-Container ausgeführt. Um die Dockerfile-Vorlage zu einem Node.js-Projekt hinzuzufügen, klicken Sie mit der rechten Maustaste auf Ihr Projekt, wählen Sie Neues Element hinzufügen und wählen Sie die Dockerfile-Vorlage aus.

Diese Version von NTVS verbessert auch Node.js IntelliSense, Formatierung, Debugging, TypeScript, Ausführen von Komponententests und Npm-Integration. Mit einem zusätzlichen Download unterstützt NTVS 1.1 RC eine neue IoT-Erweiterung, mit der Node.js-basierte universelle Windows-Apps auf Windows IoT Core-Geräten wie Raspberry Pi 2 bereitgestellt werden können.

Codebearbeitung in Visual Studio 2015

Vor einigen Jahren hatte ich eine private Besprechung des damaligen GM des Visual Studio-Teams über die Pläne für die nächste Version von Visual Studio. Nachdem sie die Folien durchgesehen hatte, fragte sie mich, was ich sonst noch vorschlagen würde, und ich wies darauf hin, dass die Konvention zur schnellen Rechtschreibprüfung in Word auf die Echtzeit-Syntaxprüfung in Visual Studio angewendet werden könnte. Es folgte viel Kritzeln; Das Feature erschien ordnungsgemäß in der nächsten Beta.

Dann fragte sie mich mit einem Schimmer im Auge, ob ich Clippy in Visual Studio haben wollte. Lachend sagte ich: „Noch nicht. Vielleicht nie, es sei denn, die Vorschläge waren wirklich gut. “ (Clippy hatte unter Word-Benutzern einen schrecklichen Ruf, dumme Vorschläge auf nervige Weise zu machen.)

Das Äquivalent zu Clippy in Visual Studio 2015 ist eine Glühbirne, die immer dann angezeigt wird, wenn der Visual Studio-Editor glaubt, ein Codeproblem zu sehen und einen Vorschlag zu haben, und wenn Sie "^" eingeben. Die Glühbirne schlägt nicht nur Korrekturen für häufig auftretende Codeprobleme vor, sondern auch ein mögliches Code-Refactoring. Das Refactoring-Menü ist verschwunden und alle Refactoring-Vorgänge wurden in die Glühbirne verschoben. Alles in allem würde ich sagen, dass die Glühbirne eine gute Sache ist.

Das Umbenennen von Variablen wurde in Visual Studio 2015 erheblich verbessert. Sie können tatsächlich sehen, was es tun wird, bevor es passiert. Die Live-Code-Analyse und die automatische Korrektur wurden ebenfalls erheblich verbessert. Ein Teil der Magie besteht darin, dass die Analyse durch spezifische Code-fähige Anleitungen für die Microsoft-Plattformen und NuGet-Pakete, auf die Sie abzielen, informiert wird.

Es scheint eine kleine Änderung zu sein, aber Sie können jetzt Fensterlayouts für Visual Studio anpassen, speichern und wiederherstellen. Warum ist das wichtig? Wenn Sie regelmäßig zwischen Computern mit unterschiedlichen Bildschirmgrößen wechseln, sparen Sie viel Zeit, indem Sie einfach Ihr optimiertes Layout für den aktuell verwendeten Bildschirm aufrufen.

Visual Studio bietet jetzt Touch-Unterstützung: Scrollen (Tippen und Ziehen auf der Editoroberfläche in den regulären und erweiterten Bildlaufleisten), Drücken zum Zoomen, Auswählen einer ganzen Zeile durch Tippen auf den Editorrand, Auswählen von Wörtern durch doppeltes Tippen und gedrückt halten, um das Kontextmenü des Editors aufzurufen. Wenn Sie einen Entwicklungscomputer mit Touchscreen haben - wenn Sie für Windows 10 oder mobile Geräte entwickeln -, ist dies praktisch.

Und meine persönliche Lieblingsverbesserung der Benutzeroberfläche: Keine ALL CAPS-Menüs mehr. Auf Nimmerwiedersehen.

Testen, Debuggen, Diagnostizieren und Leistungsüberwachung

Diejenigen unter Ihnen, die beim ersten Versuch immer perfekten Code schreiben, können weitermachen. Hier gibt es nichts zu sehen. Der Rest von uns wird sich freuen: Das Debuggen in Visual Studio, das bereits ziemlich gut war, ist noch besser geworden.

Bedingte Haltepunkte gibt es schon lange. Jetzt können wir auch Aktionen angeben, die ausgeführt werden sollen, wenn ein Haltepunkt erreicht wird. Dazu gehören Haltepunkte für automatisch implementierte Eigenschaften sowie die Verwendung von Lambda-Ausdrücken in Haltepunktaktionen, Überwachungsausdrücken und dem Sofortfenster.

Mit zwei neuen Tools - dem Live Visual Tree und dem Live Property Explorer - können Sie den visuellen Baum Ihrer laufenden Windows Presentation Foundation- oder Windows Store-App untersuchen. Neue Diagnosen, die während des Debuggens verfügbar sind, sind die Ereignisliste, das Speicherauslastungstool und das CPU-Auslastungsdiagramm. Während Sie Code im Debugger ausführen, wird er von Visual Studio automatisch zeitlich festgelegt und zeigt Ihnen die (geschätzte) verstrichene Zeit und die CPU-Zeit für den Code an. Früher mussten Sie nach dem Debuggen an der Leistung arbeiten.

Wenn Sie nicht debuggen, können Sie ein neues Tool zur Anwendungszeitleiste verwenden, um den Systemressourcenverbrauch für Windows Presentation Foundation-, Windows Store 8.1- und universelle Windows Platform XAML-Apps im Laufe der Zeit zu verfolgen. In ähnlicher Weise können Sie mit dem Netzwerkdiagnose-Tool HTTP-Netzwerkvorgänge für Windows Store-Apps und Windows Universal-Apps verfolgen. Wenn Sie DirectX-Apps entwickeln (häufig, aber nicht immer, Spiele), können Sie jetzt Diagramme zu Bildzeit, Bildrate und GPU-Auslastung anzeigen, während die Anwendungen live ausgeführt werden. Mit diesen Indikatoren können Sie feststellen, ob die GPU oder die CPU möglicherweise den Leistungsengpass Ihrer App darstellt.

Scorecard Fähigkeit (30%) Leistung (30%) Benutzerfreundlichkeit (20%) Dokumentation (10%) Wert (10%) Einfache Entwicklung (20%) Gesamtpunktzahl
Visual Studio 2015 10 9 8 8 9 0 9.0