Critique: Visual Studio 2017 est le meilleur de tous les temps

Il y a deux ans, lorsque j'ai examiné Visual Studio 2015, je suis revenu en pensant que l'EDI de Microsoft était devenu le produit le plus compliqué de tous les temps et que Microsoft devrait le simplifier à l'avenir. Je me suis trompé sur un point: bien que Microsoft ait supprimé quelques fonctionnalités pour Visual Studio 2017, il en a ajouté beaucoup plus. Mais bien sûr, Microsoft a réussi à fournir un IDE plus simple et plus agile dans Visual Studio 2017, malgré l'augmentation de ses capacités.

Contrairement à certaines versions antérieures de Visual Studio qui se concentraient sur l'introduction de nouvelles technologies complexes spécifiques à Microsoft telles que Windows Communication Foundation et Windows Workflow Foundation, Visual Studio 2017 s'installe et fonctionne mieux et plus rapidement, prend en charge plus de langages et de plates-formes de programmation, améliore la productivité des développeurs et s'applique aux charges de travail multiplateformes de manière naturelle.

Pour la plupart des utilisateurs de Visual Studio 2015, la mise à niveau vers Visual Studio 2017 sera une évidence. Explorons pourquoi.

De plus en plus petit

À certains égards, Visual Studio 2017 ressemble encore plus à un gros sac de produits liés ténus que les versions précédentes de Visual Studio. Sa collection croissante de cibles de développement comprend désormais Windows, Android, iOS, Linux, MacOS, .Net Core, Anaconda, les applications Web Azure et les services connectés, Docker, Office et le développement Web avec ASP.Net, HTML5 / CSS3, JavaScript, Node .js, Python ou (grand souffle) TypeScript. Quelle liste - et elle n'est même pas complète, car il existe des technologies supplémentaires prises en charge, telles que SQL Server, Visual Studio Extensions et R.

Comment peut-on même commencer à lier le développement Web avec ASP.Net au développement Android et iOS? Eh bien, il existe un moyen de faire tout ce qui précède en C #, avec Xamarin et Mono comme technologies pour le côté mobile. Cependant, ce n'est pas la seule option pour mobile dans Visual Studio 2017.

Peut-être que vous n'aimez pas C # mais que vous souhaitez tout de même développer pour Android et iOS. Alors que diriez-vous d'utiliser C ++ ou JavaScript? Les deux langues ont pris en charge les charges de travail pour le développement mobile. Au fur et à mesure que vous approfondissez votre recherche, la stratégie de Visual Studio consistant à avoir quelque chose pour tout le monde lié à des interfaces communes (à la fois UI et API) commence à prendre du sens. Après tout, la plupart des développeurs de logiciels sont nécessairement multilingues en ce qui concerne les langages de programmation et les technologies associées. L'époque où l'on pouvait tout écrire à Fortran est révolue depuis longtemps. Et la plupart des entreprises ont des opinions bien arrêtées sur leurs langages et environnements de développement «standard».

Mais qu'en est-il de l'installation? La taille énorme de l'installation de Visual Studio est un problème depuis le premier produit Visual Studio il y a 20 ans. Visual Studio 2017 propose un programme d'installation beaucoup plus modulaire que les versions précédentes (voir la figure ci-dessous), une amélioration bienvenue. L'installation minimale est, étonnamment, de quelques centaines de mégaoctets relativement sveltes. Cependant, une installation complète de l'édition Entreprise prend entre 30 Go et 40 Go selon les conditions préalables déjà présentes sur le système. Microsoft me dit que l'installation moyenne est d'environ la moitié.

La taille de l'installation complète n'est pas entièrement la faute de Microsoft. Par exemple, l'émulateur Google Android utilise à lui seul plus de 17 Go. Cela implique que Visual Studio lui-même est beaucoup plus petit qu'il ne l'était auparavant, bien qu'il couvre tous les systèmes cibles supplémentaires.

Quoi de neuf?

Quoi de neuf et d'excitant dans Visual Studio 2017 qui pourrait vous inciter à mettre à niveau à partir de Visual Studio 2015 avec le Service Pack actuel? Microsoft affirme que l'EDI est plus rapide «du démarrage à l'arrêt» et offre désormais un moyen d'afficher, de modifier et de déboguer le code sans projets ni solutions. Microsoft affirme également que les améliorations apportées à la navigation dans le code, à IntelliSense, à la refactorisation, aux correctifs de code et au débogage vous font gagner du temps et des efforts sur les tâches quotidiennes, quelle que soit la langue ou la plate-forme. Certes, tout cela est agréable à avoir, mais la productivité améliorée est-elle suffisante pour vous permettre de passer à niveau? J'essaierai de décrire ce qu'ils ressentent dans la pratique lorsque je discute de l'IDE.

Si vous ne souhaitez pas effectuer une installation complète, soit parce que vous manquez d'espace disque, soit parce que vous n'êtes pas intéressé par tous les aspects du produit, le programme d'installation modulaire est beaucoup plus pratique que le programme d'installation de Visual Studio 2015. D'autre part, à quelle fréquence installez-vous Visual Studio? Quelques fois par an, avec des mises à jour toutes les quelques semaines? J'apprécie l'amélioration, mais cela ne devrait pas avoir beaucoup d'impact à moins que vous ne soyez limité par l'espace disque, par exemple, si vous développez sur un ordinateur portable fourni avec un disque SSD de 128 Go.

Un IDE plus rapide, en revanche, a un impact énorme. Le démarrage de Visual Studio et la charge de la solution sont devenus nettement plus rapides au cours des dernières itérations, passant de «Je ferais mieux d'aller faire bouillir de l'eau et préparer du thé pendant que mon projet s'ouvre» dans Visual Studio 2008 à l'actuel «Permettez-moi de me lever et de m'étirer pendant quelques secondes pendant que mon projet s'ouvre. » Pour ce qui est de travailler avec des projets et des solutions code moins, eh bien, je ne le voulais que depuis 20 ans, depuis Visual Studio 97.

Microsoft propose une suite intégrée d'outils Azure qui vous permet de configurer, créer, déboguer, empaqueter et déployer des applications et des services sur Microsoft Azure directement à partir de l'EDI. Si vous utilisez Azure, c'est une victoire: passer entre la console Azure, la ligne de commande Azure et Visual Studio peut distraire et interrompre votre flux. Si AWS est votre cloud principal, cependant, vous ne vous en souciez peut-être pas du tout.

Enfin, Microsoft promet qu'avec Visual Studio 2017 et Xamarin, il est plus rapide et plus facile que jamais de créer, tester et déboguer des applications mobiles pour Android, iOS et Windows. Si Xamarin a finalement été secoué pour fonctionner sur Android et iOS sans bogues (que je n'ai pas testés de manière approfondie), et si le concepteur XAML est devenu suffisamment rapide pour être utilisé sans me donner envie de jeter l'ordinateur à la rue, cela va être un gros plus.

Sur ce dernier problème, Microsoft affirme qu'environ 90% des frais généraux liés à l'ouverture du concepteur XAML ont disparu. Conformément à cette affirmation, j'observe maintenant une pause de cinq secondes avec un message «chargement du concepteur ...», ce qui est certainement mieux que la minute environ que le concepteur avait l'habitude de prendre pour charger. Je vois également une réponse plus rapide à la fois en faisant glisser les widgets vers l'aire de conception et en tapant dans la fenêtre de code XAML. Le retard lors de la synchronisation des deux fenêtres est toujours perceptible, mais ne me fait plus penser que Visual Studio s'est peut-être arrêté.

Vous pouvez également développer des applications mobiles multiplateformes dans Visual Studio 2017 avec Apache Cordova ou Visual C ++. Le cas d'utilisation du développement mobile avec JavaScript et Cordova est clair, et de nombreuses personnes en dépendent déjà pour les applications mobiles multiplateformes. Mais pourquoi avons-nous besoin du développement de bibliothèques multiplateformes Visual C ++ entre iOS et Android? Il s'avère que de nombreux développeurs C ++ mobiles l'apprécieront. Pour les jeux mobiles et les applications grand public, le code commun, généralement en C ou C ++, s'avère être un pourcentage important du projet, avec une interface utilisateur écrite en Objective C ++ ou Java en plus.

Bien que Visual Studio 2017 prenne en charge certains développements iOS et MacOS à partir de Windows, vous avez toujours besoin d'un Mac. Pourquoi? Déboguer les applications console et ASP.Net pour MacOS, créer des interfaces graphiques pour MacOS et créer et déboguer des applications pour iOS.

C ++ est le modèle même d'un langage portable moderne, et il est souvent utilisé pour développer des applications qui s'exécutent sur plusieurs systèmes d'exploitation. C'est en partie pourquoi Microsoft a également ajouté la prise en charge C ++ pour le développement Linux dans cette version et amélioré sa conformité à la norme C ++.

Qu'est-ce qui est parti?

Visual Studio 2017 a renoncé à plusieurs fonctionnalités rarement utilisées. Vous pouvez, cependant, vous fier actuellement à certaines des fonctionnalités qui attendaient les fjords; ils sont toujours disponibles, mais uniquement si vous exécutez une ancienne version côte à côte avec la nouvelle. Cela peut encore entraver votre adoption, car l'installation de plusieurs instances de Visual Studio (en particulier les versions plus anciennes) sur un seul disque est pratiquement synonyme d'un problème d'espace disque.

Silverlight, un sous-ensemble inapproprié de Windows Presentation Foundation pour fournir des applications multimédias et interactives riches à partir d'un complément de navigateur, faisait fureur au début des années 2010 et est maintenant obsolète. Je vais sauter la lutte de pouvoir interne de Microsoft entre le camp Silverlight et le camp HTML5; suffit de dire que Silverlight a perdu. Il n'est donc pas surprenant que Visual Studio 2017 omet la prise en charge du développement Silverlight. Si vous avez besoin de maintenir d'anciennes applications Silverlight, vous devrez continuer à utiliser Visual Studio 2015.

De même, Microsoft ne fabrique plus de smartphones Windows Phone et abandonne les anciennes versions de Windows Phone et du Windows Store au profit de Windows 10. Selon la version de Windows Phone que vous devez maintenir, utilisez Visual Studio 2015 ou Visual Studio 2012.

Microsoft a abandonné la modélisation UML de Visual Studio 2017 et n'a pas l'intention d'investir davantage dans UML. Au lieu de cela, il dispose d'une modélisation de couche, de diagrammes de dépendances et de vérifications de la couche d'architecture pour le code. Vous pouvez également créer et déployer des extensions de modélisation de couche.

Si vous avez vraiment besoin d'UML dans Visual Studio 2017, vous pouvez utiliser l'un des centaines d'outils UML disponibles aujourd'hui, dont beaucoup sont gratuits et open source, et dont certains incluent actuellement des extensions Visual Studio.

Installation de Visual Studio 2017

J'ai installé Visual Studio 2017 sur deux machines Windows 10: un ordinateur portable avec un très petit SSD et une tour avec un disque dur de taille décente. Notez que j'utilisais une version candidate à partir de février, et non la version finale prévue pour la deuxième semaine de mars. L'ordinateur portable avait déjà Visual Studio 2015 installé; la tour avait l'aperçu de Visual Studio 15 installé, qui était le prédécesseur de Visual Studio 2017. J'ai utilisé le programme d'installation Web de MSDN. En fait, je n'ai jamais vu une image d'installation ISO proposée, bien que cela ne signifie pas qu'il n'en existe pas.

J'espérais que le programme d'installation de Visual Studio 2017 serait suffisamment intelligent pour proposer de supprimer Visual Studio 2015 lorsqu'il verrait qu'il n'y avait pas assez d'espace sur le SSD de l'ordinateur portable pour les deux versions. Pas de chance. Comme il existe des cas d'utilisation pour avoir à la fois Visual Studio 2017 et Visual Studio 2015 sur la même machine, l'installation de Visual Studio 2017 m'a essentiellement renfloué. J'ai dû recourir à la désinstallation manuelle de tout ce qui ressemblait à Visual Studio 2015 et aux anciennes versions de technologies connexes telles que SQL Server, un travail qui me prenait environ une heure et nécessitait des interventions constantes. J'ai ensuite pu installer une grande partie utile de Visual Studio 2017. Le programme d'installation a gardé un onglet en cours d'exécution des exigences d'espace disque des charges de travail et des modules que j'avais choisis, et il ne se poursuivrait pas tant qu'il n'était pas certain que tout ce qui était sélectionné conviendrait.

J'ai honnêtement pensé que devoir faire la désinstallation manuelle était une épreuve inutile. D'un autre côté, la seule chose à laquelle je pourrais penser qui aurait facilité mon travail aurait été un assistant de désinstallation pour les anciennes versions de Visual Studio.

Sur la tour, j'ai pu sélectionner toutes les charges de travail de Visual Studio 2017 et appuyer sur Installer. Le processus peut avoir pris une heure. Je ne sais pas avec certitude car j'ai pu repartir et revenir pour le trouver terminé. Je pense que c'est la première fois que je peux dire cela à propos d'une installation de Visual Studio.

La nouvelle installation modulaire semble être une grande victoire. Les choix qu'il propose sont divisés logiquement en «charges de travail» et, dans n'importe quelle charge de travail, vous pouvez facilement inclure ou exclure des composants spécifiques, tels que l'émulateur Google Android que j'ai dû initialement exclure sur l'ordinateur portable pour installer le reste de la charge de travail Xamarin Mobile. Vous pouvez prétendument installer aussi peu que quelques centaines de mégaoctets et avoir toujours un environnement de travail, ce qui est bien pour les membres de l'équipe ayant des responsabilités concentrées et de petits disques.

Plus rapide, plus intelligent, mieux

Depuis que j'ai utilisé (et développé) des IDE, soit plus de 25 ans, le nom du jeu a été la productivité des programmeurs. Même au mauvais vieux temps des mini-ordinateurs et des postes de travail, le plus gros coût de création de logiciels était les salaires des développeurs. Maintenant que les coûts du matériel et des logiciels sont mesurés en milliers de dollars au lieu de dizaines de milliers et que les salaires annuels des programmeurs dépassent 100 000 dollars au lieu de moins de 50 000 dollars, la productivité des programmeurs est encore plus importante pour les résultats. Examinons les fonctionnalités de Visual Studio 2017 qui visent à améliorer la productivité et à «ravir» le développeur, pour citer Microsoft.

fiche d'évaluation Capacité (30%) Performance (30%) Facilité d'utilisation (20%) Documentation (10%) Valeur (10%) Note globale (100%)
Visual Studio 2017 dix dix 9 8 9 9,5