Bilan: Visual Studio 2015 innove

Visual Studio a toujours été un gros produit avec une multitude de fonctionnalités qui se sont développées à chaque version. Visual Studio 2015 étend cette tendance d'une manière que je ne m'attendais jamais à voir de Microsoft.

Développement d'applications mobiles multiplateformes? Cochez cette case au moins deux fois, une fois pour Xamarin et une fois pour Cordova, avec un crédit supplémentaire pour le C ++ portable et l'intégration avec Unity.

Serveurs multiplateformes? Cochez cette case au moins trois fois, pour .Net Core, ASP.Net et Entity Framework, et Python et Node.js.

Édition et débogage multiplateforme? Oui. Visual Studio Code fonctionne sur Mac OS X, Linux et Windows.

Gestion du cycle de vie des applications multiplateformes? Git et GitHub sont pris en charge, et Microsoft a étendu la prise en charge de Git dans Team Foundation Server pour permettre une intégration continue avec les mêmes types de règles d'enregistrement intelligentes que Team Foundation Server a pour son système de contrôle de version.

Constructions multiplateformes? Tu l'as eu. En plus de travailler avec Visual Studio Build et MSBuild, Team Foundation Build peut utiliser Ant, Gradle, Maven, Android Build, Gulp, Xcode et autres.

Bien sûr, Visual Studio prend toujours en charge le développement pour, vous savez, Windows, et inclut toujours toutes les anciennes technologies pour les applications de bureau Windows, des applications de console créées en C ++ avec les appels d'API Windows aux applications Windows Presentation Foundation en C # et XAML conçues dans Blend pour Visual Studio 2015. Mais la définition de Windows s'est étendue pour Windows 10, avec des applications Windows Platform universelles. Ces applications sont destinées à fonctionner inchangées sur du matériel allant des téléphones aux tablettes en passant par les ordinateurs portables, les ordinateurs de bureau, les consoles de jeux Xbox, les casques de réalité augmentée, les Surface Hub, les serveurs et le cloud. Reste à voir dans quelle mesure cette vision particulière se concrétisera.

Une option légère et multiplateforme: Visual Studio Code

Visual Studio Code fait partie de l'écosystème Visual Studio, mais ce n'est pas Visual Studio approprié. Au lieu de cela, il s'agit d'un éditeur multiplateforme gratuit qui combine le shell Atom Electron open source avec un certain nombre de technologies Microsoft. Je l'ai utilisé sur Mac OS X et Windows, et je l'aime beaucoup; il fonctionne également sur Ubuntu Linux.

Pourquoi ne pas simplement utiliser Atom? Pour TypeScript, JavaScript, C # et Visual Basic, Visual Studio Code a une prise en charge de langage supérieure. Pour les 30 autres langues prises en charge, Visual Studio Code a la parité avec Atom.

Pourquoi ne pas utiliser le Visual Studio complet? Vous pouvez, si vous avez une machine Windows ou une machine virtuelle avec suffisamment de puissance, mais Visual Studio Code est un programme beaucoup plus léger qui démarre plus rapidement et nécessite beaucoup moins de ressources informatiques.

Nouveau dans Visual Studio 2015

Comme je l'ai mentionné au début, Visual Studio 2015 inclut une prise en charge étendue du développement mobile multiplateforme: installation et intégration d'Apache Cordova, installation et intégration de Xamarin, C ++ portable, un émulateur Android amélioré et intégration Unity.

Vous pouvez créer des applications serveur multiplateformes et les déployer sur des serveurs Windows et Linux, ainsi que les exécuter sur des ordinateurs de bureau et portables Mac OS X. La prise en charge du serveur comprend ASP.Net 5, Python, Node.js et le nouveau .Net Core 5 open source pour Windows, Linux et Mac OS X.

Dans le développement Windows, il y a la nouvelle génération d'applications universelles, de nouveaux outils de diagnostic et de nouvelles fonctionnalités de conception. Dans le domaine de la productivité, il existe un meilleur débogage, y compris le débogage des lambdas et la surveillance des performances et le débogage de l'historique simultanément. Dans l'éditeur, les processeurs de langage Roslyn alimentent une ampoule qui apparaît quand et où il y a un problème courant dans le code, et offre des corrections de code automatiques et une refactorisation améliorée. Pendant ce temps, Visual Studio 2015 propose de nombreuses mises à jour du langage de programmation, notamment C #, Visual Basic, C ++ et TypeScript, ainsi que des extensions pour Python et Node.js.

Visual Studio Online et Team Foundation Server 2015 intègrent désormais des hooks d'extensibilité et une intégration avec Trello, Campfire, etc. La fonction de planification agile comprend des tableaux Kanban et des couloirs de natation. Vous pouvez désormais effectuer des modifications et des validations de code rapides directement dans Visual Studio Online et Team Foundation Server. Vous deviez revenir à Visual Studio ou à un autre outil d'édition de code.

Comprendre les éditions de Visual Studio 2015

La multitude d'éditions de Visual Studio 2015 suffit à donner à un critique un mal de tête aveuglant. Le bref résumé:

  • La communauté est gratuite. Cette édition devrait satisfaire les développeurs individuels qui ne créent pas d'applications professionnelles.
  • Pro avec MSDN est de 1199 $. Cette édition convient aux développeurs professionnels et aux équipes.
  • Entreprise avec MSDN coûte 6 119 $ (beaucoup moins que Visual Studio Ultimate 2013). Il s'agit d'une «solution de niveau entreprise avec des capacités avancées pour les équipes travaillant sur des projets de toute taille ou complexité, y compris des tests avancés et DevOps» - en d'autres termes, elle a toutes les cloches et les sifflets.

Les SKU Express gratuits existent toujours, mais Microsoft suggère d'utiliser l'édition Community gratuite, qui fait plus. Test Professional avec MSDN existe toujours et vous pouvez acheter une copie de Visual Studio Team Foundation Server 2015.

En parlant d'autres outils d'édition de code, Visual Studio Code est un éditeur de code multiplateforme gratuit (Windows, Linux et Mac OS X) basé sur le shell open source Atom Electron, avec un support de langage approfondi de Roslyn et du compilateur TypeScript, couvrant plus plus de 30 langages de programmation au niveau de la coloration syntaxique et de la correspondance entre crochets en plus de quelques-uns au niveau IntelliSense.

.Net Core 5 est une implémentation open source multiplateforme optimisée pour le cloud de la plate-forme .Net qui prend actuellement en charge Linux, Windows et Mac OS X. Il fonctionne également dans des conteneurs Docker sous Linux. .Net Core est un sous-ensemble remanié du .Net Framework, possède des environnements d'exécution natifs et CLR (machine virtuelle d'application) et prend en charge les applications Windows Store et ASP.Net.

Les applications de la plate-forme Windows universelle ne fonctionnent pas seulement sur une large gamme de matériel, elles utilisent également le runtime .Net Native. Vous pouvez choisir parmi les langages C #, Visual Basic, C ++ et JavaScript (y compris Cordova) et construire votre interface utilisateur en XAML, DirectX ou HTML. Vous pouvez prévisualiser les conceptions XAML dans Visual Studio sur une gamme de dimensions d'appareil, d'un téléphone de 5 pouces à un Surface Hub de 84 pouces. Vous pouvez utiliser des extensions spécifiques à un appareil dans les applications universelles, à condition que vous enveloppiez ces extensions dans un code qui vérifie la présence des API appropriées au moment de l'exécution. Bien que vous puissiez concevoir du XAML dans Visual Studio, l'outil préféré pour la conception XAML est le Blend remanié pour Visual Studio 2015.

Langages de programmation mis à jour

C # 6 et Visual Basic 14 offrent quelques mises à jour de langage bienvenues, notamment des nameofexpressions, des opérateurs conditionnels nuls, des blocs awaitin catchet finallyet des membres de fonction à expression.

Les normes et le code portable marquent les améliorations du langage C ++, telles que la conformité aux normes C ++ 11 et C ++ 14 et l'inclusion de certaines fonctionnalités C ++ 17. Le compilateur C ++ propose désormais des versions plus rapides et des améliorations de la génération de code et de la sécurité. Je ne sais pas si les versions sont maintenant assez rapides pour éliminer les sessions de «compilation» étendues que les codeurs C ++ utilisent souvent pour préparer du café, visiter les installations et jouer au tennis de table. Le portage d'une base de code volumineuse vers une nouvelle version du compilateur C ++ peut prendre du temps et effectuer tous les tests de régression nécessaires.

F # 4.0 a été conçu à l'air libre par les développeurs de la communauté F #, dont environ un quart sont affiliés à Microsoft. Il existe de nombreuses améliorations au langage et aux outils, mais les plus évidentes pour moi sont l'amélioration IntelliSense et le débogage.

TypeScript 1.4 et TypeScript 1.5 (bêta) continuent de créer de nouvelles fonctionnalités pour travailler avec plus de modèles JavaScript, créer des typages plus riches et utiliser les nouvelles fonctionnalités d'ECMAScript 6.

Installation de Visual Studio 2015

L'installation de Visual Studio est devenue plus granulaire. Que cela compte ou non dépend de vos besoins. Si vous n'avez besoin que d'un sous-ensemble de fonctionnalités, vous pouvez avoir, en plus d'accélérer votre installation et de réduire son encombrement. Si vous voulez tout installer dans tous les cas, autant le faire tout de suite. Bien que vous puissiez ajouter des pièces à une installation partielle à la demande, une variante de la loi de Murphy dit que toute fonctionnalité que vous n'avez pas installée au départ sera essentielle de manière urgente, de sorte que l'installation incrémentielle se produira au pire moment possible.

J'ai été agréablement surpris de voir Visual Studio prendre en charge l'installation de toutes les dépendances open source, jusqu'aux niveaux de base tels que l'installation des SDK Android et Java nécessaires à Apache Cordova. Les installer manuellement peut être un exercice de frustration si vous obtenez une mauvaise commande.

Dans les cas d'installation partielle et complète, j'ai trouvé que les installations de Visual Studio 2015 étaient moins lourdes de risques et de frustration que les versions précédentes - jusqu'à la sortie du SDK Windows 10. Lorsque j'ai installé le SDK Windows 10, j'ai découvert que son concepteur XAML (l'une de ses nouvelles fonctionnalités les plus cool) était défaillant sur un tout nouveau projet vide. J'ai passé environ une journée avec l'équipe Visual Studio à résoudre le problème. Cela dit, le SDK a bien fonctionné dans une autre installation, ce n'est donc pas un problème répandu. (Mise à jour: il existe désormais une solution de contournement; consultez la section «Création d'applications Windows Universal» ci-dessous.)

Les outils Python de Visual Studio 2015 prennent en charge CPython, IronPython, PyPy, Anaconda et d'autres compilateurs Python, et ils vous donnent IntelliSense dans l'éditeur et le débogage interactif, y compris le débogage en mode mixte (Python / C ++) et cross-OS.

Depuis mon examen de 7 IDE JavaScript, les outils Node.js pour Visual Studio, maintenant à la version 1.1 RC, ont ajouté la prise en charge de Visual Studio 2015 (natch) et un nouveau modèle Dockerfile basé sur Linux pour faciliter la mise en place de votre application et s'exécutant dans un conteneur Docker. Pour ajouter le modèle Dockerfile à un projet Node.js, cliquez avec le bouton droit sur votre projet, sélectionnez Ajouter un nouvel élément et sélectionnez le modèle Dockerfile.

Cette version de NTVS améliore également Node.js IntelliSense, le formatage, le débogage, TypeScript, l'exécution des tests unitaires et l'intégration Npm. Avec un téléchargement supplémentaire, NTVS 1.1 RC prend en charge une nouvelle extension IoT qui peut déployer des applications Windows universelles basées sur Node.js sur des appareils Windows IoT Core tels que Raspberry Pi 2.

Modification de code dans Visual Studio 2015

Il y a quelques années, j'ai eu un briefing privé du directeur général de l'équipe Visual Studio sur les plans de la prochaine version de Visual Studio. Après avoir parcouru les diapositives, elle m'a demandé ce que je suggérerais d'autre, et j'ai souligné que la convention de soulignement ondulé pour la vérification orthographique en temps réel dans Word pourrait être appliquée à la vérification de la syntaxe en temps réel dans Visual Studio. Beaucoup de gribouillage s'en est suivi; la fonctionnalité est apparue dans la prochaine version bêta.

Puis elle m'a demandé, avec une lueur dans les yeux, si je voulais Clippy dans Visual Studio. En riant, j'ai dit: «Pas encore. Peut-être pas jamais, à moins que les suggestions qu'il a faites soient vraiment bonnes. (Clippy avait une terrible réputation parmi les utilisateurs de Word pour avoir fait des suggestions stupides d'une manière ennuyeuse.)

L'équivalent de Clippy dans Visual Studio 2015 est une ampoule, qui apparaît chaque fois que l'éditeur Visual Studio pense qu'il voit un problème de code et a une suggestion, et chaque fois que vous tapez «^.». L'ampoule suggère non seulement des correctifs aux problèmes de code courants, mais également une refactorisation du code possible. Le menu de refactoring a disparu et toutes les opérations de refactoring ont été déplacées vers l'ampoule. Dans l'ensemble, je dirais que l'ampoule est une bonne chose.

Le changement de nom des variables est considérablement amélioré dans Visual Studio 2015; vous pouvez réellement voir ce qu'il va faire avant que cela ne se produise. L'analyse du code en direct et la correction automatique sont également grandement améliorées. Une partie de la magie est que l'analyse est informée par des conseils spécifiques au code pour les plates-formes Microsoft et les packages NuGet que vous ciblez.

Cela semble être un petit changement, mais vous pouvez désormais personnaliser, enregistrer et restaurer les dispositions de fenêtre pour Visual Studio. Pourquoi est-ce important? Si vous changez régulièrement d'ordinateurs avec différentes tailles d'écran, vous gagnerez beaucoup de temps en affichant simplement votre disposition optimisée pour l'écran que vous utilisez actuellement.

Visual Studio prend désormais en charge le toucher: défilement (tapotement et glissement sur la surface de l'éditeur sur les barres de défilement régulières et améliorées), pincement pour zoomer, sélection d'une ligne entière en appuyant dans la marge de l'éditeur, sélection des mots en les double-tapant , et appuyez et maintenez pour appeler le menu contextuel de l'éditeur. Si vous avez une machine de développement avec un écran tactile - vous devriez le faire si vous développez pour Windows 10 ou des appareils mobiles - vous trouverez cela pratique.

Et mon amélioration de l'interface utilisateur préférée: plus de menus EN MAJUSCULES. Bon débarras.

Test, débogage, diagnostics et surveillance des performances

Ceux d'entre vous qui écrivent toujours un code parfait du premier coup peuvent avancer, il n'y a rien à voir ici. Le reste d'entre nous va se régaler: le débogage de Visual Studio, qui était déjà assez bon, s'est encore amélioré.

Les points d'arrêt conditionnels existent depuis longtemps. Désormais, nous pouvons également spécifier les actions à entreprendre lorsqu'un point d'arrêt est atteint. Cela inclut les points d'arrêt sur les propriétés implémentées automatiquement et l'utilisation d'expressions lambda dans les actions de point d'arrêt, les expressions de surveillance et la fenêtre Exécution.

Deux nouveaux outils - l'arborescence visuelle en direct et l'explorateur de propriétés en direct - vous permettent d'examiner l'arborescence visuelle de votre application Windows Presentation Foundation ou Windows Store en cours d'exécution. Les nouveaux diagnostics disponibles lors du débogage sont la liste des événements, l'outil d'utilisation de la mémoire et le graphique d'utilisation du processeur. Pendant ce temps, lorsque vous exécutez du code dans le débogueur, Visual Studio le chronomètre automatiquement et vous indique le temps (estimé) écoulé et le temps processeur pour le code. Avant, vous deviez travailler sur les performances après avoir débogué.

Lorsque vous n'êtes pas en train de déboguer, vous pouvez utiliser un nouvel outil de chronologie de l'application pour suivre la consommation des ressources système au fil du temps pour Windows Presentation Foundation, Windows Store 8.1 et les applications XAML de la plateforme Windows universelle. De même, l'outil de diagnostic réseau vous permet de suivre les opérations réseau HTTP pour les applications du Windows Store et les applications universelles Windows. Et si vous développez des applications DirectX (souvent, mais pas toujours, des jeux), vous pouvez désormais regarder les graphiques de temps de trame, de fréquence d'images et d'utilisation du GPU pendant que les applications sont en cours d'exécution. Ces indicateurs vous permettront de savoir si le GPU ou le CPU peut être le goulot d'étranglement des performances de votre application.

fiche d'évaluation Capacité (30%) Performance (30%) Facilité d'utilisation (20%) Documentation (10%) Valeur (10%) Facilité de développement (20%) Score global
Visual Studio 2015 dix 9 8 8 9 0 9,0