Dank Modularität zu mehr Produktivität - Allgeier (Schweiz)
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
Test Center Dank Modularität zu mehr Produktivität Visual Studio 2017 Microsoft hat im März 2017 eine neue Version seiner Entwicklersuite Visual Studio veröffentlicht. Im Vordergrund stehen die Verbesserung der Produktivität und die Anbindung an die Cloud. Von Christoph Möhring M icrosoft hat am 7. März 2017 Visual Studio 2017 Die Zusammenarbeit mit der Cloud ist für den Entwickler veröffentlicht und preist die Entwicklungsumge- transparent gestaltet. Dies betrifft die Microsoft-eigene Azure- bung für alle Plattformen und Technologien un- Einbindung sowie Cloud-Plattformen anderer Anbieter. Alles ter dem Motto «Any Developer, Any App, Any kann direkt und zentral gesteuert und verwaltet werden. Mit der Platform» an. Die implementierten Änderungen und Neuerun- Taste F5 wird die Debug Session gestartet, unabhängig davon, gen sollen sich positiv auf die Produktivität auswirken. Visual wo der Code ausgeführt wird. Diese Möglichkeiten sind nicht nur Studio ist ausserdem neu auch unter MacOS (Visual Studio for auf die Entwicklung beschränkt. Microsoft ermöglicht es, den Mac) verfügbar. Damit werden nun alle relevanten Plattformen kompletten DevOps-Prozess abzubilden. Von der Entwicklung unterstützt, nämlich Windows, MacOS, Linux, iOS, Android bis hin zur Produktion in mehreren Stufen für alle gewünschten und Windows Mobile. Umgebungen: Test, Integration und Produktion. Kurz vor Ende Die Oberfläche der Entwicklersuite hat sich nur im Detail der Betaphase sind die Redgate Data Tools in die RTM-Version geändert. Die darunterliegende Architektur ist jedoch komplett mit aufgenommen worden. Die interessanteste Funktion ist hier- überarbeitet worden. Dies macht sich vor allem bei der Instal- bei die automatische Erstellung von SQL Skripts. Im Skript sind lation bemerkbar. Über eine Auswahl von 16 unterschiedlichen die Änderungen zwischen den verschiedenen Datenbank-Versi- «Workloads» werden nur die Komponenten installiert, die für onen ersichtlich. Das erstellte Skript wird als Teil des Projekts eine spezifische Art der Entwicklung benötigt werden. Xama- behandelt und in die Versionskontrolle eingebunden. Leider sind rin ist neu Teil von Visual Studio und wird über den Workload die Tools bis auf die Redgate SQL Search nur in der Enterprise Mobile Development with .NET installiert. Interessant ist die Version verfügbar. Die Familie von Visual Studio ist nochmals Möglichkeit, mit dem Xamarin Inspector zur Laufzeit das UI gewachsen – und zwar auf einen Umfang, der den Rahmen die- zu analysieren und anzupassen. Mit diesem Release kommen ses Tests bei weitem sprengen würde. Der Test fokussiert sich auch weitere Zielplattformen wie TvOS und Tizen for .NET daher im Nachfolgenden auf die spezifischen Neuerungen von hinzu. .NET Core wird nicht nur von Xamarin unterstützt. Mit Visual Studio 2017 in der Enterprise-Version. dem zeitgleich veröffentlichten .NET Core Tooling können alle Anwendungstypen mit oder ohne Cloud-Unterstützung auch im Modularisierung Container entwickelt werden. Mit Visual Studio 2017 hat Microsoft die Entwicklungsumge- bung grundlegend modularisiert. Das Installationsprogram ist übersichtlich und in Bereiche gegliedert, die durch Kacheln mit dem Anwendungstyp dargestellt werden. Durch Auswahl VISUAL STUDIO 2017 einer oder mehrerer Kacheln werden nur die, für die benötigten Aufgaben notwendigen Komponenten installiert. Microsoft be- ➤➤ Visual Studio ist modular aufgebaut und installiert nur die benötigten zeichnet diese Aufteilung wie eingangs bereits beschrieben als Komponenten. «Workloads» (in der deutschen Version noch etwas unglücklich: ➤➤ Die Komponenten sind in «Workloads» nach Aufgaben gruppiert. «Arbeitsauslastungen»). Dadurch wurde der Installationsauf- ➤➤ Alle Komponenten von Xamarin sind integriert, ein interaktiver wand massiv verringert. Was früher durchaus mehrere Stunden Formular-Designer steht zur Verfügung. ➤➤ Die Cloud-Unterstützung wurde weiter ausgebaut, DevOps-Prozesse dauern konnte, ist neu bereits in wenigen Minuten erledigt. Die können abgebildet werden. Minimalinstallation hat eine Grösse von nur 753 MB und bein- ➤➤ Visual Studio for Mac und Visual Studio Mobile Center sind neu dazu haltet die Visual Studio Shell ohne besondere Funktionen. Eine gekommen. typische Auswahl wie Webentwicklung oder .NET-Desktop entwicklung ist zirka 3 bis 6 GB gross. 50 Nr. 04 | April 2017 Swiss IT Magazine
Test Center das Verzeichnis hinzugefügt. Im täglichen Einsatz erhält man somit eine Flexibität, wie man sie von Visual Studio Code oder anderen Editoren gewohnt ist. Bei den Sprachen wurden keine besonders nennenswerte Neuerungen implementiert. Vielmehr wurden etliche kleine Er- weiterungen eingeführt, wie zum Beispiel die Option, Tupeln als Paremeter und Rückgabewert unter C# 7.0 und Visual Basic 14 einzusetzen. Für die tägliche Entwicklung werden die Erwei- terungen keinen besonderen Mehrwert bringen. In Spezialfällen können sie aber eine spürbare Erleichterung bedeuten. Mobile Entwicklung Wie bei den Frameworks werden für die mobile Entwicklung unterschiedliche Ansätze angeboten. Neben der klassichen Ent- wicklung mit C++ können unter Javascript mit Apache Cordova Im Marketplace sind alle Erweiterungen für Visual Studio 2017 aufgelistet und oder unter Xamarin mobile Anwendungen entwickelt werden. stehen zum Download bereit. Hierfür existieren eigene Workloads mit den zugehörigen Pro- jektvorlagen. Es ist spürbar, dass die Untersützung für Xamarin im Vor- dergrund steht. Während der Präsentation am Launch-Event Der modulare Ansatz setzt sich auch nach der Installation wurden fast auschliesslich Xamarin und dessen Tools vorge- fort. Wird ein Projekttyp oder Designer während der Arbeit oder stellt. Visual Studio 2017 hat Version 4.3 von Xamarin integ- von geladenen Projekten benötigt, kann die Erweiterung direkt riert. Die grössten Änderungen sind eine Vorschaufunktion für installiert werden. Über das Installationsprogramm können wei- die XAML-basierten Xamarin Forms und eine Analyse- und tere Workloads oder einzelne Komponenten nachträglich manu- Editierfunktion des XAML Code durch den Xamarin Inspec- ell hinzugefügt werden. Bei der Installation von neuen Projekt- tor. Dieser Inspector ermöglicht es, sich während der Laufzeit typen kann es sein, dass Visual Studio beendet werden muss, mit der im Emulator ausgeführten App zu verbinden und die um die Installation fortsetzen zu können. Dies ist zum Beispiel Oberfläche in den einzelnen Ebenen zu betrachen. Dabei können bei der Erweiterung für Office/SharePoint aufgetreten. In Pra- Anpassungen im Design vorgenommen werden, die wiederum xistests zeigt sich, dass solche Fehler davon abhängen können, zu einer Anpassung im Code führen. Dies ist eine sehr beein- welche Tools bereits installiert waren. Glücklicherweise sind druckende Funktion, die besonders bei der Vielfalt der mobilen solche Bugs aber die Ausnahme und dürften mit der Weiteren- Betriebssystemversionen viel Zeit einspart. entwicklung der Workloads behoben werden. Workloads Mit den Workloads werden Komponenten für typische Aufgaben VERSIONEN UND INHALTE zusammengefasst. Es existieren 16 unterschiedliche Workloads, die nach Themen gegliedert sind, wie zum Beispiel Windows, Visual Studio 2017 Web und Cloud oder Mobile und Gaming. ➤➤ Community: Public kostenlos Interessant ist, dass Microsoft neben den klassischen Desk- ➤➤ Professional: für Einzelentwickler und kleine Teams top- und Web-Workloads auch Workloads für Node.js, Python ➤➤ Enterprise: für Unternehmen oder Software-/Beratungsfirmen und Unity anbietet. Die Vielfalt des Angebots zeigt, wie viele Visual Studio Team Foundation Server 2017 oder VSTS unterschiedliche Technologien und Frameworks unterstützt ➤➤ Codeverwaltung werden. Zum Teil überlappen oder konkurrieren diese, aber Vi- ➤➤ Abbildung von Entwicklungsprozessen sual Studio kann mit allen umgehen. Die Entscheidung, wie und ➤➤ Deployment (Release Management) und DevOps was genutzt wird, liegt letztlich beim Entwickler, die Auswahl Visual Studio Mobile Center gestaltet sich jedoch nicht immer einfach. ➤➤ Testsuite für mobile Anwendungen .NET Core und .NET Visual Studio for Mac Die Beantwortung der Frage, welches Framework oder welche ➤➤ Web und Mobile; überwiegend auf Xamarin basierend Sprache eingesetzt werden soll, kann eine Herausforderung Xamarin Developer Studio sein. Mit .NET, .NET Core und Xamarin werden gleich drei ➤➤ Crossplattform Development für Mobile und Web hauseigene Frameworks angeboten. Hinzu kommen die unter- schiedlichen Javascript Frameworks oder Bibliotheken. Die Visual Studio Code Unterstützung ist für alle ungefähr gleichwertig. Für .NET Core ➤➤ leichtgewichtig, kostenlos ➤➤ Windows, Linux, MacOS v1.1.1 gibt es jetzt die .NET Core Tools. Interessanterweise wird ➤➤ Web und Mobile ein neues Format für die Projektdatei (csproj) eingesetzt. Diese ➤➤ Git-Integration enthält nicht mehr die einzelnen Dateien, sondern nur noch die Verzeichnisse. Neue Dateien werden einfach durch Kopieren in Swiss IT Magazine Nr. 04 | April 2017 51
Test Center Javascript gang in den Betrieb. Microsoft spricht hier von Continuous In- Die Entwicklung mit Javascript wird nicht nur bei der mobilen tegration (CI) und Continuous Delivery (CD). Mit diesen beiden Entwicklung unterstützt. Vielmehr ist Javascript in fast allen letzten Schritten wird ein kompletter DevOps-Prozess abgebil- Bereichen vertreten. Deswegen bietet Visual Studio in allen Ja- det. Der gesamte Ablauf kann mit Hilfe der Visual Studio Teams vascript-Projekten einen neuen Language Service an. Dieser ist Services erweitert und konfiguriert werden. Nach und nach kön- schnell und bietet eine erweiterte Intellisense-Unterstützung für nen weitere Schritte in den Auslieferungsprozess aufgenommen Sprachfeatures aus JSDoc, ES2016 und JSX Syntax an. Der Per- werden. Hat man eine Umgebung (zum Beispiel Test) fertig, formance-Gewinn macht sich insbesondere bei grösseren Pro- können für die weiteren Umgebungen die Konfigurationen ge- jekten mit vielen Dateien bemerkbar. Die Vorschläge erscheinen klont und über Variablen an die Umgebung angepasst werden. In praktisch unmittelbar und unterstützen den Entwickler. der Präsentation während des Launch-Events wurde innerhalb Cloud Egal wo der Javascript Code letztendlich ausgeführt wird, Visual Studio bietet eine Unterstützung zum Debuggen oder Deployen. Am umfangreichsten ist diese bei der hauseigenen Azure-Platt- form gegeben, aber auch die Cloud-Dienste von Google und Amazon werden unterstützt, sowohl von Microsoft wie auch von den Cloud-Anbietern. Über die mitgelieferten Projektvor lagen werden alle Daten für den Cloud-Dienst gesammelt und in einem vorgefertigten Projekt mit Deployment erstellt. Die Pro- jekt-Konfigurationen können nachträglich angepasst werden, um weitere Deployment-Umgebungen oder Container hinzuzu- fügen. Diese Projektvorlagen sind sehr hilfreich bei der Kon- figuration. Visual Studio speichert die Cloud Services (sprich Die Filterung mit Intellisense. Azure-Konten) und macht sie überall verfügbar. So kann rasch das richtige Konto gewählt werden. Werden weitere Ressour- cen innerhalb Azure benötigt, können diese gleich mit erstellt von zehn Minuten gezeigt, wie auf diese Weise der komplette werden. Dies verringert den Verwaltungsaufwand enorm. Nicht Auslieferungsprozess für drei Umgebungen inklusive Testing vergessen darf man allerdings, die Kosten für Azure unter Kon- erstellt werden kann. Dies sind eindrückliche Zahlen. Auch trolle zu halten. wenn es in der Praxis länger dauern wird – hier gewinnt man Im ersten Schritt muss aber nicht immer ein Cloud-Dienst ein- an Effizienz. gesetzt werden. Für die Entwicklung können Container genutzt werden, die lokal ausgeführt werden. Als Container kommt eine Weitere Features Kombination von HyperV und Docker zum Einsatz. Der Docker Trotz der sehr guten Unterstützung des kompletten DevOps-Pro- Container wird in einer speziellen Linux VM in HyperV ge zesses kann der Code wie gewohnt in Visual Studio entwickelt hostet und ausgeführt. Visual Studio übernimmt die komplette werden. Innerhalb der Entwicklungsumgebung hat Microsoft Konfiguration und den Start des Containers. Der Entwickler die Verwaltung der Projekte optimiert. Es gibt neu die Option, kann die Debug-Session wie gewohnt mit einem Druck auf die Projektinformationen erst zu laden, wenn sie benötigt wer- die Taste F5 starten. Diese einfache Art des Debuggens ist eine den. Bei grösseren Projekten kann damit das Arbeiten innerhalb grosse Erleichterung bei der täglichen Arbeit, da sie auch in der der Solution beschleunigt werden, da man oft nur ein bis zwei Cloud funktioniert. Zur Kontrolle zeigt Visual Studio während Projekte aktiv nutzt. Erweitert wurde auch die Suchfunktion in des Startens und Verbindens alle Ausgaben an. der Projektliste (Solution Explorer). Die Suchergebnisse werden in einem eigenen Fenster ausgegeben und navigieren direkt zu DevOps der gefundenen Stelle in der Datei. Nachdem die Entwicklung mit einem Container und/oder der Neu ist es auch möglich, ohne Projektdatei zu arbeiten. Dies Cloud integriert wurde, kommt als nächster Schritt der Über- ist vor allem für kleinere Tests oder Änderungen sehr nütz- lich. Der Entwickler kann den Code schreiben und kleine Tests durchführen, ohne zusätzlich eine Konfiguration anzugeben. Visual Studio 2017 hat zudem viele kleinere Erweiterungen DER AUTOR bekommen, die direkt aus dem Editor genutzt werden können. Intellisense bietet die Möglichkeit, nach Typen (Namensräume, Christoph Möhring ist CTO von Allgeier (Schweiz) Klassen, Schnittstellen, etc.) zu filtern, um das Ergebnis besser AG. Möhring hat mehr als 25 Jahre Erfahrung in der Software-Entwicklung und -Architektur. Er hat haupt- einschränken zu können. sächlich mit Produkten von Microsoft gearbeitet und Diese Filterungsmöglichkeiten finden sich auch bei den Such- Visual Studio seit seinen Anfängen eingesetzt. In seiner Rolle als Chief ergebnissen unter «Alle Referenzen finden» wieder. Die visuelle Technology Officer haben sich seine Schwerpunkte gewandelt hin zu Darstellung ist nun flacher und nach Typen gegliedert. Über die Entwicklungs-/DevOps-Prozessen und Qualitätssicherung sowie zur Glyphen können viele Aktionen direkt ausgelöst werden. Diese strategischen Auswahl neuer Technologien. gab es bereits in Visual Studio 2015, mit der Version 2017 sind aber weitere hinzugekommen. Über Vorschläge, die visuell als 52 Nr. 04 | April 2017 Swiss IT Magazine
Test Center Glühbirne dargestellt werden, können Refactoring-Aktionen wie das Extrahieren von Klassen oder das Umwandeln von Pro- VISUAL STUDIO 2017 perties in Methoden ausgelöst werden. Bei Unit-Tests werden Fazit die Ergebnisse als Glyphe dargestellt und können damit direkt Visual Studio 2017 bietet eine sehr umfangreiche Funktionsvielfalt für die neu gestartet werden. Fehlende Unit-Tests werden erkannt und unterschiedlichsten Entwicklungssysteme und Plattformen. Der modulare können über die Glyphe erstellt werden. Mit einem Klick auf Ansatz und die zentrale Steuerung aller Verteilungsprozesse aus der die Ausführung-bis-Klick-Glyphe wird der Debugger gestartet Entwicklungsumgebung heraus ermöglichen ein effizientes Arbeiten. und die Ausführung stoppt an der gewünschten Stelle. Über eine weitere Glyphe werden mögliche Performance-Probleme Features im Code angezeigt. · modulare Installation und Architektur · viele Erweiterungen beim Editieren während des Debuggings · dynamisches Ladeverhalten und bessere Navigation innerhalb einer Solution · Einsatz von Glyphen, um kontextsensitive Aktionen auszulösen · Filterfunktionen nach Sprachkonstruktionstypen bei Intellisense · Integration von Xamarin, Vorschau für XAML Xamarin Forms · Unterstützung von Cloud-Umgebungen und DevOps-Abläufen aus Visual Studio heraus «Ausführung bis Klick». Positiv + Die modulare Installation beschleunigt den Installationsvorgang. + Das Handling innerhalb einer Solution wird durch das dynamische Analysen von Laufzeitfehlern sind mit dem neuen Exception Laden der Projekte beschleunigt. Die Navigation wird durch die Such- Handler nun einfacher möglich. Es werden alle Exceptions dar- funktion mit Ergebnisfenster vereinfacht. Diese Funktionen machen gestellt, einschliesslich der Inner Exceptions. Bei den Tests ist sich besonders bei grossen Projekten bemerkbar. positiv aufgefallen, dass die Reaktionszeit deutlich kürzer ist als + Das direkte Editieren im Code während des Debuggings und die Glyphen mit ihren kontextsensitiven Aktionen helfen spürbar bei der in Visual Studio 2015. Während des Debugging ist es nun auch Entwicklung. Die Turn-Around-Zeiten werden kürzer. möglich, direkt XAML-Code zu editieren, ohne den Debugger + Die zentrale Steuerung des Auslieferungsprozesses und die Unter- neu zu starten. stützung von Containern helfen einen DevOps-Prozess schneller zu integrieren und zu etablieren Mehr Produktivität und mehr Komplexität Die neuen Features und Erweiterungen führen zu signifikanten Negativ Zeitersparnissen. Die modulare Installation beziehungsweise − Durch die modulare Architektur wurde viel angepasst. Darunter leidet Architektur und das dynamische Nachladen von Projekten be- auch die Stabilität und bestehende Visual-Studio-Erweiterungen funk schleunigen die Antwortzeiten. Der konsequente Einsatz von tionieren (noch) nicht. Bei manchen noch zu installierenden Komponen- Glyphen im Editor, um kontextsensitiv weitere Aktionen auszu- ten muss Visual Studio immer noch beendet werden. lösen, und das direkte Editieren während des Debuggings tragen − Unterschiedliche Produkte wie Visual Studio Community 2017 oder Visual Studio Code können für die gleiche Aufgabenstellung eingesetzt zu kürzeren Durchlaufzeiten bei. Aus diesen Gründen lohnt sich werden. Wie sich die Produkte in Zukunft ausrichten, ist noch offen. das Update für bereits bestehende Projekte, zumal mit Visual − Die Komplexität für den einzelnen Entwickler steigt. Die Erweiterungen Studio 2017 die gleiche Kompatibilität zu Projektdateien be- hinsichtlich Frameworks, Plattformen und Entwicklungsprozessen steht wie unter Visual Studio 2015. verlangen viel mehr Verständnis und Know-how der Materie. Für Auf der anderen Seite wird es durch die grosse Vielfalt von Neueinsteiger ist die Lernkurve steiler geworden. Einsatzmöglichkeiten schwieriger, die richtigen Produkte und Komponenten für die eigene Entwicklung auszuwählen. Micro- Hersteller / Anbieter soft versucht dies durch die Workloads zu entschärfen, erhöht Microsoft aber durch die Unterstützung immer weiterer Frameworks und Preis Plattformen gleichzeitig auch die Komplexität. Es bleibt also Die Editionen Visual Studio Professional und Enterprise 2017 sowie Visual abzuwarten, welche Frameworks sich durchsetzen werden. Studio for Mac sind in entsprechenden MSDN-Abonnements enthalten. Viele stehen in direkter Konkurrenz, so zum Beispiel UWP zu Die Preise werden über Distributoren angeboten. Visual Studio Commu- Xamarin, Cordova/Ionic zu Xamarin oder .NET v4.6 zu .NET nity 2017 wie auch Visual Studio Code sind kostenlos. Core. Durch die Modularisierung musste auch die Architektur da- hingehend angepasst werden, wodurch das Risiko besteht, dass Wertung dies auf Kosten der Stabilität gehen kann. Dies bestätigt die lange Liste der bekannten Probleme in den Release Notes im Die Wertung gilt, sofern die Stabilitätsprobleme in der fertigen Feedback-Kanal. Während den Tests mit dem letzten Release Version behoben sind. Es kann gesagt werden, dass mit Visual Candidate konnten jedoch keine grösseren Probleme festgestellt Studio 2017 massiv produktiver entwickelt werden kann, und die werden. Dies mag auch daran liegen, dass nicht alle Features Cloud-Anbindung sehr gelungen ist. genutzt werden konnten und insbesondere die neuen Funktionen getestet worden sind. Swiss IT Magazine Nr. 04 | April 2017 53
Sie können auch lesen