Visual Studio "15" : de nouvelles fonctionnalités C++14/17 et des améliorations pour les développeurs Python
Dans la cinquième préversion

Le , par Michael Guilloux, Chroniqueur Actualités
La cinquième préversion de Visual Studio "15" est disponible depuis la semaine dernière et nous avons déjà commencé à creuser dans les nouveautés et changements apportés dans la Preview 5 de la prochaine version majeure de l’EDI de Microsoft. On peut notamment évoquer la disponibilité du filtrage IntelliSense pour C#, VB et C++, pour améliorer la production, et la preuve de concept de l’implémentation du support du générateur de projet CMake. Microsoft continue de dévoiler les améliorations dans cette préversion, et cette fois-ci, au niveau du compilateur C++ et de la bibliothèque STL, mais aussi pour les développeurs Python.

Nouvelles fonctionnalités C ++ 14/17

Une des suggestions pour Visual Studio "15" était le support des fonctions constexpr étendues de C++14. Il s’agit notamment de permettre, au sein des fonctions constexpr, des déclarations autres que les variables static ou thread_local et les variables non initialisées. Il s’agit aussi, entre autres, de permettre les instructions if et switch (mais pas goto), mais aussi toutes les instructions de boucle : for (y compris la boucle for basée sur une plage), while, et do-while. Ces changements ont été acceptés dans la Preview 5. En plus des fonctions constexpr étendues, on note la généralisation des boucles for basées sur les plages, un changement de C++17 pour corriger un défaut dans C++14.

Côté C++17, Visual Studio "15" Preview 5 apporte le support du static_assert court, shared_ptr::weak_type, <optional> et <variant>. Les fonctionnalités C++17 seront complétées dans la Release Candidate avec <any>, <string_view>, apply() et make_from_tuple(). Il y aura également une refonte majeure de std::vector. La cinquième préversion de Visual Studio "15" corrige également un bon lot de bogues dans le compilateur C++ et la bibliothèque STL que vous pourrez consulter sur le blog de l’équipe Visual C++.

Améliorations pour les développeurs Python

Cette préversion apporte son lot d’améliorations et nouveautés pour le langage, mais l’équipe Python de Microsoft a préféré présenter d’abord celles qui résultent de la nouvelle expérience d’installation de Visual Studio ; les autres seront présentées au cours des prochaines semaines. Il faut en noter rappeler qu’avec Visual Studio "15", Microsoft permet aux développeurs de faire une installation sur mesure en fonction des composants qui les intéressent. Chaque composant peut être installé ou désinstallé individuellement. Cela évite aux développeurs d’installer tout un tas de fonctionnalités pour n’en utiliser qu’un petit lot.

Microsoft a également créé des workloads, qui sont des packages de composants préconfigurés, conçus pour permettre aux développeurs de savoir ce que choisir en fonction de leur domaine. Côté Python, il y a actuellement deux workloads disponibles : une pour le développement Python et une autre pour la data science et les applications analytiques. D’après l’équipe Python de Microsoft, ces workloads « sont conçues pour vous permettre de démarrer rapidement avec Python pour desktop, serveur et cloud ou pour vous donner un EDI axé sur la data science, qui inclut Python, R et F# ».

La workload pour la data science vous permet d'installer les outils et les runtimes clés dont vous pourriez avoir besoin pour l'analyse, la visualisation, le machine learning et le calcul scientifique. En ce qui concerne la workload pour le développement Python, elle vous offre un support Python pour l’édition, le débogage (y compris les débogages à distance et en mode mixte), le profilage, les tests unittest, les templates Cookiecutter, mais également une copie de CPython 3.5. Comme vous pouvez le voir sur l’image suivante, vous pouvez choisir différentes options à droite de la fenêtre d’installation. Les autres options incluent également la possibilité de choisir des versions plus anciennes ou 32 bits de CPython, des outils de développement Python natif, et bien d’autres.


Avec la nouvelle expérience d’installation de Visual Studio, vous pourrez avoir un environnement de développement Python fonctionnel pour juste 875 Mo. Et Microsoft explique qu’à l’avenir, la taille de l’installation sera considérablement plus petite et le temps d’installation plus court.

Sources : Blog Visual C++, Blog de l’équipe Python de Microsoft

Et vous ?

Que pensez-vous de ces améliorations apportées par la 5e préversion de Visual Studio "15" ?

Voir aussi :

Visual Studio ''15'' : le générateur de projet CMake s'invite dans l'EDI, une preuve de concept de son support offerte dans la Preview 5
La cinquième préversion de Visual Studio "15" est disponible et apporte le filtrage IntelliSense pour une amélioration de la productivité
Visual Studio Code 1.6 est disponible avec le support de TypeScript 2.0 et un bon lot de nouveautés et améliorations


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de Michael Guilloux Michael Guilloux - Chroniqueur Actualités https://www.developpez.com
le 18/10/2016 à 16:36
Visual Studio "15" : Microsoft retire le support du langage de modélisation unifié (UML)
en raison de sa très faible utilisation

L’Unified Modeling Language (ou langage de modélisation unifié en français), en abrégé UML, est un langage de modélisation graphique conçu pour fournir une méthode normalisée pour visualiser la conception d'un système. Sa dernière version, UML 2.5, est sortie en juin 2015. Publié dans les années 90, le langage de modélisation unifié est couramment utilisé en développement logiciel et en conception orientée objet, mais l’utilisation de l’UML a été en déclin.

Dans la prochaine version de son environnement de développement, de nom de code Visual Studio "15", Microsoft a donc décidé de retirer le support de l’UML dans l’édition Entreprise de son EDI, la seule édition d’ailleurs qui prend en charge les diagrammes UML. « Nous supprimons les concepteurs UML de Visual Studio "15" Entreprise. Supprimer une fonctionnalité est toujours une décision difficile, mais nous voulons nous assurer que nos ressources soient investies dans les fonctionnalités qui offrent la plus grande valeur à la clientèle », explique Jean-Marc Prieur de Microsoft, senior program manager pour Visual Studio.

Dans un billet de blog, il justifie cette décision par deux principales raisons. D’abord, Jean-Marc Prieur explique qu’après analyse des données de télémétrie, ils ont constaté que les concepteurs UML ont été utilisés par très peu de clients. Ce constat a également été confirmé lorsque Microsoft a consulté ses équipes de vente et de support technique. L’autre raison est que la société devrait en plus « investir des ressources d'ingénierie importantes pour réagir aux changements qui se produisent » dans le noyau de Visual Studio avec la nouvelle version.

Pour ceux qui utilisent activement les concepteurs UML, Microsoft recommande donc de continuer à utiliser Visual Studio 2015 ou les versions antérieures, le temps peut-être de décider quel autre outil utiliser pour leurs besoins d'UML.

En réponse au billet de Jean-Marc Prieur de Microsoft, certains utilisateurs suggèrent à l’éditeur des solutions possibles au lieu de supprimer les concepteurs UML. Il s’agit notamment de les proposer en tant qu’extensions ou de les rendre open source. La dernière option pourrait permettre à la communauté de décharger Microsoft de la lourde tâche qu’est aujourd’hui d’améliorer les concepteurs UML pour suivre les changements introduits dans le noyau de Visual Studio avec la nouvelle version.

Il faut toutefois préciser que Microsoft continue de prendre en charge la visualisation de l'architecture .Net et de code C ++ à travers les cartes de code. L’éditeur explique aussi que dans cette version de Visual Studio, des améliorations significatives ont été apportées à la validation de couche (dépendance). Le concepteur de couche, qui permet de spécifier et valider les dépendances dans le code .Net, ajoute un support pour l'analyse architecturale en temps réel (live architectural analysis) avec la Preview 5 de Visual Studio. « Dans cette version, nous avons réécrit la validation de couche pour utiliser le .NET Compiler Platform [mieux connu sous son nom de code “Roslyn”], qui permet de faire la validation de l'architecture en temps réel... Cela signifie également que les erreurs signalées sont traitées comme toute autre erreur d'analyse de code. Ce qui veut dire que les développeurs sont moins susceptibles d'écrire du code qui introduit des dépendances indésirables, car ils seront avertis dans l'éditeur pendant qu'ils écrivent. » On peut donc dire que l'expérience de validation de dépendance dans Visual Studio "15" est destinée à aider les développeurs à respecter les contraintes architecturales d'une application alors qu'ils modifient le code.

Source : Microsoft

Et vous ?

utilisez-vous les concepteurs UML avec Visual Studio ? Que pensez-vous de l’annonce de Microsoft et quelle solution proposez-vous ?

Voir aussi :

Visual Studio "15" : de nouvelles fonctionnalités C++14/17 et des améliorations pour les développeurs Python, dans la cinquième préversion
Visual Studio ''15'' : le générateur de projet CMake s'invite dans l'EDI, une preuve de concept de son support offerte dans la Preview 5
La cinquième préversion de Visual Studio "15" est disponible et apporte le filtrage IntelliSense pour une amélioration de la productivité
Avatar de Jitou Jitou - Membre averti https://www.developpez.com
le 18/10/2016 à 21:23
Le jour ou de vrais développeurs et pas de consultants auto-proclamés développerons des méthodes de conception peut être qu'elles auront un avenir dans nos solutions du quotidien.
Avatar de gretro gretro - Membre actif https://www.developpez.com
le 19/10/2016 à 0:35
Perso, j'aime bien le concept de pseudo-UML lors de la phase de conception, surtout sur Whiteboard. Ça aide beaucoup avec la conception. Cependant, quand le développement est terminé, le code devrait être le morceau qui se décrit. Les tests peuvent également aider.

C'est donc une nouvelle que j'accueille avec ni froid ni chaud.
Avatar de gstratege gstratege - Membre habitué https://www.developpez.com
le 19/10/2016 à 9:21
C'est dommage, mais en même temps c'est normal que "personne" ne l'utilise puisque ils la mettent dans la version Enterprise... A mon avis si c'était dans la version Community ça aurait été beaucoup plus utilisé. C'est dommage.
Avatar de ncambier ncambier - Nouveau Candidat au Club https://www.developpez.com
le 19/10/2016 à 9:43
Heureusement il y a "understand c++"
Avatar de Arnard Arnard - Membre chevronné https://www.developpez.com
le 19/10/2016 à 21:45
La partie UML je la fais avec Visio perso :/
Avatar de dranduncandane dranduncandane - Nouveau membre du Club https://www.developpez.com
le 20/10/2016 à 11:41
Et Microsoft a raison de la faire. D'abord l'UML n'était que disponible dans la version architect et UML n'est pas un outil d'architect. UML est un language qui a pour but la compréhension entre business et technicien. Il y a une confusion terrible avec UML a cause de bouquain expliquant les patterns se basant sur un ou deux diagram UML. Alors oui certain outils de UML semblent sympas pour aider a l'architecture mais rien en UML ne permet de vraiment faire ou représenter de l'architecture complexe.
Avatar de Gugelhupf Gugelhupf - Modérateur https://www.developpez.com
le 20/10/2016 à 12:10
Parmi tous les types de diagrammes proposés par UML, les diagrammes de structure, c'est-à-dire diagramme de classe (lorsqu'ils sont techniques) et diagramme de composant, sont très utiles car ils représentent une vision concrète du projet, le diagramme de séquence (famille des diagrammes interaction) est bien aussi pour représenter les échanges synchrones/asynchones entre les différents éléments.

Le problème c'est plus les diagrammes de comportement (diagramme de cas d'utilisation et diagramme d'activité), car ils relèvent plus de l'interprétation qu'autre chose, j'ai déjà vu plusieurs cas durant mes études où un enseignant se contredisait sur sa propre correction d'exercice que l'on refaisait, ou des enseignants qui n'étaient pas d'accord avec leurs collègues (lorsqu'on ne leur révélaient pas l'auteur des corrections ), et bien sûr ils ne sont jamais d'accord avec tout ce qui traîne sur internet et notamment les cours sur Developpez

Le diagramme d'activité pourrait être cool si on le combine à un outil de workflow (genre Activiti), mais au niveau modélisation théorique ça reste assez abstrait dans la compréhension, surtout lorsque la maîtrise d'ouvrage se charge de le créer et que la maîtrise d'oeuvre se charge de l'implémenter
Avatar de Stéphane le calme Stéphane le calme - Chroniqueur Actualités https://www.developpez.com
le 20/10/2016 à 17:08
Visual Studio "15" : Microsoft donne plus de détails sur l'outillage .NET Core,
qui tourne principalement autour des fichiers csproj

Au début du mois, Microsoft a rendu disponible la cinquième préversion de Visual Studio “15”, sa suite de logiciels de développements. Nous avons déjà creusé les nombreux changements apportés comme la disponibilité du filtrage IntelliSense pour C#, VB et C++ afin d’améliorer la production, ou l’intégration du générateur de projet CMake, qui permet la réutilisation de code C ++ sur plusieurs EDI et systèmes. Cette fois-ci, nous allons nous intéresser à l’outillage .NET Core que propose l’EDI aux développeurs.

La suite apporte la commande dotnet new qui permet de créer de nouveaux templates en passant par les outils de ligne de commande .NET Core. Cette commande permet de générer des fichiers projet csproj et Program.cs. Concernant le premier fichier (csproj), par défaut, il aura le même nom que le répertoire.


Microsoft annonce avoir simplifié de manière significative le format csproj pour offrir aux développeurs une expérience plus conviviale de la ligne de commande : « si vous êtes habitué au project.json, vous pouvez voir qu'il contient des informations très similaires », a indiqué l’éditeur. Et de préciser que ce format supporte également la syntaxe générative pour vous éviter de citer les fichiers sources individuels dans le fichier projet. Cela permet d’avoir des dossiers de projets qui ne nécessitent pas l’ajout manuel de tous les fichiers, ce qui a pour conséquence d'améliorer considérablement la collaboration au sein des équipes étant donné que le fichier de projet n'a pas besoin d'être modifié chaque fois qu'un nouveau fichier est ajouté.

Une fois que vous avez lancé la commande dotnet new, voici le template csproj qui est créé par défaut. Notons qu’il vous donne accès à tous les ensembles qui viennent avec le runtime .NET Core comme System.Collections. Il donne également accès à tous les outils et cibles qui accompagnent le SDK Core .NET.

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<Project>
 <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" />
 <PropertyGroup>
   <OutputType>Exe</OutputType>
   <TargetFramework>netcoreapp1.0</TargetFramework>
 </PropertyGroup>
 <ItemGroup>
   <Compile Include="**\*.cs" />
 </ItemGroup>
 <ItemGroup>
   <PackageReference Include="Microsoft.NETCore.App" Version="1.0.0" />
   <PackageReference Include="Microsoft.NET.SDK" Version="1.0.0" />
 </ItemGroup>
 <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
Les références paquets Nuget sont désormais intégrés et font partie du format csproj et non plus d’un fichier spécial utilisant son propre format. Ces références sont sous la forme <PackageReference Include="[Package-Name]" Version="[Package-Version]" />.

Par exemple, si vous voulez ajouter une référence à WindowsAzure.Storage, il vous suffit simplement d’ajouter aux deux références précédentes la ligne avec le nom du paquet ainsi que celui de la version.

Code : Sélectionner tout
1
2
3
4
5
<ItemGroup>
   <PackageReference Include="Microsoft.NETCore.App" Version="1.0.0" />
   <PackageReference Include="Microsoft.NET.SDK" Version="1.0.0" />
   <PackageReference Include="WindowsAzure.Storage" Version="7.2.1" />
 </ItemGroup>
Si dans plusieurs cas vous n’aurez besoin que de cibler une seule instance .NET Core, .NET Framework ou .NET Standard avec votre bibliothèque, il peut arriver que vous ayez besoin de plus de flexibilité. MSBuild supporte le multi ciblage comme scénario principal. La syntaxe est relativement simple puisqu’il suffit de spécifier l’ensemble des cibles séparées par un point virgule comme ceci :

Code : Sélectionner tout
1
2
3
<PropertyGroup>
   <TargetFrameworks>netstandard16;net452</TargetFrameworks>
</PropertyGroup>
Cette commande va automatiquement établir le droit #defines que vous pourrez paramétrer dans votre code pour activer ou désactiver des blocs de code spécifiques en fonction des framework visés.

Vous aurez aussi la possibilité d’effectuer une migration de projets project.json existant vers csproj facilement en vous servant de la commande dotnet migrate. Après avoir lancé la commande dotnet migrate, ce project.json génère le même fichier csproj qui a été indiqué plus haut :

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
 "version": "1.0.0-*",
 "buildOptions": {
   "debugType": "portable",
   "emitEntryPoint": true
 },
 "dependencies": {},
 "frameworks": {
   "netcoreapp1.0": {
     "dependencies": {
       "Microsoft.NETCore.App": {
         "type": "platform",
         "version": "1.0.1"
       }
     },
     "imports": "dnxcore50"
   }
 }
}

Source : blog Microsoft
Avatar de tomlev tomlev - Rédacteur/Modérateur https://www.developpez.com
le 20/10/2016 à 22:39
Cette nouvelle approche semble régler l'essentiel des problèmes qu'il y avait jusqu'ici avec .NET Core. Ils ont gardé les features essentielles du project.json en les adaptant à la sauce MSBuild. Je pense que c'est tout ce qu'il manquait pour pouvoir se mettre sérieusement à .NET Core, parce que jusqu'ici c'était une galère sans nom...
Avatar de Excellion Excellion - Membre actif https://www.developpez.com
le 30/10/2016 à 10:35
Ah, l'UML... des heures de cours, d'apprentissage, de TD, d'exams... toutes basées sur la très fameuse Etude de cas.
Et dès qu'on arrive en entreprise... l'Etude de cas est un post-it rempli à coup de "non, mais je vous demande un truc simple", "non, mais c'est facile", "attendez, on va rajouter un petit truc, pas compliqué"...
Et bien sur chaque "petit truc" remet tout à plat, et c'est autant de diagrammes à revoir.

Et allez expliquer à un employeur d'une PME, que vous allez passer 1 semaine à écrire des hiéroglyphes pour fabriquer LA calculatrice... qu'il n'avait pas imaginé comme ça, et pour qui "ben c'est simple, on clique sur une touche et ça affiche un nombre...".

A cela il faut ajouter des langages comme l'ASP.net qui fait un peut ce qu'il veut en terme de classes, le multithreading après coup, qui vous flingue la conception...

Bref, autant Merise est adaptable aux PME pour les base de données, autant l'UML (d'ailleurs, certains développeurs écrivent tout dans une classe, voir la procédure main, sans se soucier d'optimisation ou des modifications futures) ...

C'est dommage, car l'idée d'origine est louable, mais inapplicable sur des petits projets conçus pour une ou deux fonctionnalités...
Avatar de TiranusKBX TiranusKBX - Expert confirmé https://www.developpez.com
le 30/10/2016 à 12:06
les seuls cas ou j'utilise encore l'UML c'est quand je doit me mettre d'accord avec d'autres sur l'implémentation d'une fonction de grande complexité, pour un système global ça devient une perte de temps vus les changement réguliers des cahiers des charges
Avatar de Andarus Andarus - Membre averti https://www.developpez.com
le 10/11/2016 à 8:43
Citation Envoyé par TiranusKBX Voir le message
les seuls cas ou j'utilise encore l'UML c'est quand je doit me mettre d'accord avec d'autres sur l'implémentation d'une fonction de grande complexité, pour un système global ça devient une perte de temps vus les changement réguliers des cahiers des charges
Que mon outil de doc(doxygen) génère de l'uml pour naviguer entre les classe j trouve ça cool
Avatar de Arnard Arnard - Membre chevronné https://www.developpez.com
le 10/11/2016 à 10:53
Y'a une différence entre concevoir en utilisant UML et générer un schéma de sortie de son application en UML une fois le code fait
Avatar de Michael Guilloux Michael Guilloux - Chroniqueur Actualités https://www.developpez.com
le 15/11/2016 à 13:30
Visual Studio 2017 RC sera disponible cette semaine
le point des améliorations de productivité introduites dans la prochaine version majeure de l’EDI

Du 16 au 18 novembre, Microsoft va rassembler les développeurs à New York, dans le cadre de son évènement Connect(). Toutefois, avant le début de l’évènement, on sait déjà quelques-unes des annonces que fera la firme de Redmond. Grâce à une mise en ligne apparemment accidentelle, on sait par exemple que Microsoft profitera pour présenter une version de Visual Studio pour les utilisateurs de Mac. Mais, ce n’est pas tout. Visual Studio "15", qui a très souvent été confondu avec Visual Studio 2015, va porter le nom de « Visual Studio 2017 » et livrer sa release candidate (RC). Visual Studio 2017 RC sera dévoilé lors de l’évènement Connect(), mais la fuite nous permet déjà de faire le point des améliorations dans cette version. Dans le billet de blog de Microsoft qui a été aussitôt retiré du Web, mais enregistré sur Web Archive, la firme de Redmond met en avant des améliorations pour la productivité des développeurs.

La productivité nécessitant d’économiser plus de temps ou plus d'efforts sur les tâches que vous effectuez tous les jours, Visual Studio 2017 RC met l’accent sur l’automation de ces tâches, l’amélioration de la navigation et l’introduction de feedbacks immédiats sur la qualité et l'état de votre code alors que vous l’écrivez. Visual Studio 2017 RC met à profit l'investissement de Visual Studio 2015 dans le projet Roslyn pour lancer de nouvelles fonctionnalités intéressantes et apporter des améliorations, notamment dans le refactoring, la génération de code, l'analyse de code, la navigation, les tests et le débogage pour les développeurs .NET.

Navigation dans le code, écriture et lecture de code

Les développeurs passent énormément de temps à naviguer dans leur code, mais également dans l’écriture et la lecture du code. Au niveau de la navigation dans le code, Visual Studio 2017 RC offre une expérience considérablement améliorée, avec Find All References, GoTo et Indent Guides. Visual Studio 2017 RC se concentre également sur la facilitation de l'écriture de code correct, ainsi que le maintien de la lisibilité des bases de code des développeurs. En s'appuyant sur les fonctionnalités de Visual Studio 2015, cette version fournit une expérience IntelliSense plus améliorée avec la présélection intelligente, le filtrage et la prise en charge de XAML.

Au niveau de l'analyse de code, Visual Studio 2015 avait déjà introduit la fonctionnalité d'analyse de code en direct (live code analysis), qui permet d'avoir un feedback sur votre code au fur et à mesure que vous l'écrivez. Cela vous permet de connaître les problèmes dès le début et éviter d'accumuler un ensemble de problèmes que vous pourriez ne jamais corriger après. Visual Studio 2017 RC pousse un peu plus loin l'analyse en direct et la correction de code en introduisant par exemple des analyseurs de style de code qui identifient les problèmes de style dans le code dès qu'il est tapé.

Test et débogage de code

Comme l’explique Microsoft, la prise en charge des tests unitaires crée un dilemme entre la sélection d’un nombre suffisant de tests pour s'assurer que le code est correct et la nécessité d'exécuter le moins de tests possible de sorte que vous n'ayez pas à trop attendre pour obtenir les résultats des tests. Ce compromis entre la justesse du code et le temps d’exécution des tests peut souvent être source d’improductivité ou de frustration selon le côté vers lequel on penche. Visual Studio 2017 RC introduit donc une fonctionnalité baptisée Live Unit Testing pour C # et Visual Basic. Live Unit Testing exécute uniquement les tests impactés après une modification du code et fournit, pour chaque ligne de code exécutable, un feedback immédiat sur le statut des tests dans l'éditeur.

Si pour une ligne de code exécutable donnée, au moins un test échoue, alors l'éditeur l'indique au moyen d'une croix (x) rouge au début de la ligne. Si pour une ligne de code exécutable donnée, tous les tests sont exécutés avec succès, l'éditeur l'indique également au moyen d'une coche verte. Et si pour une ligne de code exécutable, aucun test n'est exécuté, cela est indiqué par un trait bleu, comme vous pouvez le voir dans la figure suivante.


Au niveau du débogage, Visual Studio 2017 RC vous permet de gagner du temps en réduisant le nombre d'actions requises pour parcourir un programme et pour extraire des informations d'exception, grâce à une fonctionnalité Run To Clik (Exécuter jusqu’au clic) introduite dans la Preview 5.

Vous n’avez plus besoin de définir des points d’arrêt temporaires ou procéder en plusieurs étapes pour exécuter votre code et arrêter l’exécution sur la ligne de votre choix. Maintenant, lorsque vous êtes à l’état d’arrêt dans le débogueur, l’icône Run To Click apparaît en regard de la ligne de code sur laquelle le curseur de votre souris est placé. Déplacez votre souris sur l’icône et cliquez sur le bouton pour lancer l’exécution jusqu’à cette ligne.


Alors qu’on se rapproche désormais de la version finale de Visual Studio 2017, on retient que pour la prochaine version de son EDI, Microsoft s’est concentré sur la facilitation de l'installation de ses outils de développement, l'amélioration des performances et l'amélioration de la productivité des développeurs. Au niveau des extensions, dans un billet de blog, Microsoft fait également un point des changements introduits dans cette version. Il s’agit entre autres de :

  • l’ajout d’un système de suivi des performances pour les extensions, de sorte que les utilisateurs de Visual Studio verront une barre de notification lorsqu'une extension ralentit le temps de chargement ou la vitesse de frappe ;
  • des améliorations visant à faciliter l'installation ou la mise à jour de plusieurs extensions ;
  • les extensions peuvent maintenant détecter et installer des composants dépendants ;
  • la mise à jour le Visual Studio Marketplace pour faciliter la recherche et l'installation des extensions ;


Source : Web Archive, Microsoft

Et vous ?

Qu’en pensez-vous ?

Voir aussi :

Microsoft va dévoiler une version macOS de Visual Studio, pour fournir aux développeurs un environnement similaire à celui de Windows
Visual Studio Code 1.7 est disponible, cette version de l'éditeur de code multiplateforme met l'accent sur l'amélioration de l'expérience utilisateur
Avatar de CS FS CS FS - Membre régulier https://www.developpez.com
le 15/11/2016 à 14:54
Encore un petit effort et on va pouvoir s'économiser une licence Resharper ^^
Avatar de Iradrille Iradrille - Expert confirmé https://www.developpez.com
le 15/11/2016 à 19:52
Citation Envoyé par Michael Guilloux Voir le message
Find All References [...] Run To Clik


Déjà présent dans VS 2015
Avatar de Michael Guilloux Michael Guilloux - Chroniqueur Actualités https://www.developpez.com
le 15/11/2016 à 22:00
Citation Envoyé par Iradrille Voir le message


Déjà présent dans VS 2015
Oui, Find All References (ou Rechercher toutes les références) n'est pas nouveau, mais ça été amélioré. Je ne me suis peut-être pas bien exprimé, surtout que je n'ai pas donné de détails. Disons ça donc autrement : l'expérience avec Find All References s'est considérablement améliorée.

Citation Envoyé par Microsoft
This release delivers a greatly improved navigation experience—with Find All References, GoTo and Indent Guides—to get you from A to B with greater confidence and fewer distractions (even in large code bases).

Previously, Find All References would discover all usages of a symbol and then output the results as a simple, flat list in the Results Window. Now, as Figure 1 shows, the references are colorized and arranged in a hierarchical display with custom grouping, sorting, filtering and searching to help you rapidly home in on the particular reference you desire—even when there are many references in the list.
A propos de Run To Click (Exécuter jusqu'au clic), il me semble que c'est différent de Run To Cursor (Exécuter jusqu'au curseur). Run To Click a été introduit dans la Preview 5 de Visual Studio "15". Je ne suis pas un utilisateur de VS, donc merci de me le signaler si je me trompe quelque part.
Avatar de Oscar.STEFANINI Oscar.STEFANINI - Membre régulier https://www.developpez.com
le 16/11/2016 à 15:14
merci, bon article. hâte d'en savoir +. J'aimerais bien que Crosoft Communique aussi sur Studio Code, histoire de remettre un petit coup sur les différences avec le monstre Studio ^^.
Avatar de tomlev tomlev - Rédacteur/Modérateur https://www.developpez.com
le 17/11/2016 à 0:40
Citation Envoyé par Michael Guilloux Voir le message
A propos de Run To Click (Exécuter jusqu'au clic), il me semble que c'est différent de Run To Cursor (Exécuter jusqu'au curseur). Run To Click a été introduit dans la Preview 5 de Visual Studio "15". Je ne suis pas un utilisateur de VS, donc merci de me le signaler si je me trompe quelque part.
Ce n'est pas fondamentalement différent, c'est juste une nouvelle façon de faire la même chose. J'utilise déjà souvent le "Run to cursor" (Ctrl-F10), là ce sera juste plus facile de le faire à la souris.
Avatar de Hinault Romaric Hinault Romaric - Responsable .NET https://www.developpez.com
le 17/11/2016 à 3:29
Microsoft dévoile Visual Studio 2017 RC
performances, productivité et DevOps aux centres des améliorations

La première journée de la conférence Connect, qui se déroule actuellement à New York a été riche en annonces. L’évènement dédié aux développeurs a levé le voile sur une panoplie d’outils dédiés à ces derniers.

L’annonce la plus importante de la journée a été, sans aucun doute, la sortie de Visual Studio 2017 RC (anciennement connu sous le nom de code Visual Studio 15).

La publication de la RC marque une étape importante dans le cycle de développement de l’EDI phare de Microsoft. En effet, les fonctionnalités ont été gelées et celui-ci peut désormais être utilisé dans un environnement de production.

A l’installation de l’EDI, on peut déjà noter les premiers changements. Visual Studio 2017 introduit une nouvelle expérience d’installation qui sera probablement très appréciée par les développeurs. La nouvelle interface sobre et conviviale, se débarrasse des encombrements pour offrir au développeur uniquement le nécessaire pour sélectionner et installer rapidement les fonctionnalités dont il a besoin avec le moins d’impact sur son système.


Au lancement du programme d’installation, le développeur a droit à une interface permettant de sélectionner les fonctionnalités et les composants dont il a besoin. Selon Microsoft, l’installation minimale nécessite seulement quelques centaines de mégaoctets. Pourtant, elle prend en charge l’édition de code pour plus de 20 langages et le contrôle de source.

Une fois l’EDI installé, au démarrage, on remarque les améliorations esthétiques qui ont été apportées à la page de démarrage de l’environnement de développement. Cette dernière s’enrichit de nouvelles fonctionnalités, y compris la possibilité de télécharger les référentiels distants depuis VSTS. De plus, il est possible de réduire certaines sections, dont le Badge sur les éléments récemment ajoutés dans le flux d’actualités.


Visual Studio 2017 a été développé avec pour objectif de booster la productivité des développeurs. Ainsi, Microsoft s’est penché sur l’IntelliSence pour rendre celui-ci encore plus intelligent.


La nouvelle fonctionnalité d’analyse du code en direct fournit en temps réel des notifications des violations des règles de dépendance de l’architecture quand vous tapez du code dans l’éditeur de code. Microsoft s’appuie sur cette dernière pour offrir les tests unitaires en direct, permettant de visualiser les résultats des tests unitaires et la couverture du code en direct au fur et à mesure que vous écrivez du code. Malheureusement, cette fonctionnalité est disponible uniquement pour la version entreprise de l’EDI.


Autre nouveauté intéressante : la fonctionnalité « Exécuter jusqu’au clic ». Cette dernière vient offrir une alternative aux points d’arrêt temporaires. Une icône en regard de la ligne de code sur laquelle vous souhaitez marquer un arrêt, permet de lancer le débogage jusqu’à cette ligne. Une fois le curseur de la souris sur la prochaine ligne de code où vous souhaitez effectuer un arrêt, l’icône « Exécuter jusqu’au clic » s’affiche et vous pouvez continuer avec l’exécution jusqu’à cette ligne.


Le nouvel assistant d’exception deqswa Visual Studio 2017 permet d’afficher les informations liées aux exceptions dans une boîte de dialogue non modale compacte avec accès immédiat aux exceptions internes.

Visual Studio 2017 s’enrichit d’une fonctionnalité phare des utilisateurs de Resharper. La fonction Aller a (Ctrl + ou Ctrl + T) permet de trouver et d’accéder rapidement aux fichiers, types, méthodes et autres éléments du code.


La navigation a été améliorée avec des meilleures options de filtrage. La fonction Rechercher toutes les références a été remaniée pour offrir des fonctions avancées de regroupement, de tri et de recherche dans les résultats des références, ainsi qu’une coloration des résultats.


En ce qui concerne le développement mobile et le Cloud, Visual Studio 2017 rend plus facile le développement d’applications Android, iOS et Windows avec C#, C++ et JavaScript. On note également une meilleure intégration avec Microsoft Azure et le support du DevOps avec Docker.

Visual Studio dispose d’un lot d’autres nouvelles fonctionnalités. L’équipe .NET de Developpez.com reviendra sur celles-ci dans les semaines à venir.

Microsoft a également publié la préversion de Visual Studio pour Mac et Visual Studio Mobile Center, une nouvelle plateforme pour les builds, tests, déploiement et monitoring des applications mobiles.

Télécharger Visual Studio 2017 RC

Source : Microsoft, Connect 2016

Et vous ?

Qu’en pensez-vous ?

Voir aussi :

Microsoft va dévoiler une version macOS de Visual Studio, pour fournir aux développeurs un environnement similaire à celui de Windows
Visual Studio Code 1.7 est disponible, cette version de l'éditeur de code multiplateforme met l'accent sur l'amélioration de l'expérience utilisateur
Avatar de clementmarcotte clementmarcotte - Expert éminent https://www.developpez.com
le 17/11/2016 à 4:30
Quand je pense au Calvaire que VS 2015 m'a causé, je n'ai juste pas envie de l'avoir. Va presque falloir que Microsoft me paie pour que je l'installe.
Avatar de Spleeen Spleeen - Membre du Club https://www.developpez.com
le 17/11/2016 à 9:28
En soit, je ne vois pas grand changement :

  • Inttellisense, ils en parlent à chaque fois. LA fonctionnalité phare et merveilleuse de VS. Mais enfin bon elle évolue peu.
  • On nous promet toujours moins d'embonpoint, mais l'installation est toujours une des plus lentes et des plus demandeuses qui soit (comme SQL Server...)
  • Une interface qui n'évolue pas dans le design, toujours bloqué à du Win32 de ce coté... avec les lenteurs des langages interprétés.


Disons que, du reste, ça avance... lentement mais surement. La concurrence elle ne traîne pas.
Avatar de CS FS CS FS - Membre régulier https://www.developpez.com
le 17/11/2016 à 9:41
Citation Envoyé par clementmarcotte Voir le message
Quand je pense au Calvaire que VS 2015 m'a causé, je n'ai juste pas envie de l'avoir. Va presque falloir que Microsoft me paie pour que je l'installe.
Ma naïveté me pousse à croire qu’ils n’ont pas pu faire pire avec cette nouvelle mouture.

J’ai presque envie de leur pardonner ces deux dernières années de galère s’ils ont au moins résolu le souci de la navigation entre les fichiers (ne plus avoir à se couler un café ou deux lorsque l’on doit passer d’un xaml à un autre). Ça et ne plus avoir à killer le processus XDesProc toutes les 5mn...

Mais clairement c’est frustrant de se battre constamment avec un outil qui possède un tel potentiel.
(Il y a 6 ou 7 ans je me battais avec Eclipse et je me sentais pousser des ailes lorsque je basculais sur du dev C# sous VS. Aujourd’hui j’ai "presque" envie de dire que c’est l’inverse).

Bref ! j’ai vraiment hâte de tester tout ça (avec une bonne surprise à la clé, j’espère).

Citation Envoyé par Spleeen Voir le message
  • Une interface qui n'évolue pas dans le design, toujours bloqué à du Win32 de ce coté... avec les lenteurs des langages interprétés.
Je ne comprend pas cette phrase.
Avatar de dragonjoker59 dragonjoker59 - Expert éminent https://www.developpez.com
le 17/11/2016 à 10:53
Citation Envoyé par Spleeen Voir le message
Une interface qui n'évolue pas dans le design, toujours bloqué à du Win32 de ce coté... avec les lenteurs des langages interprétés.
Moi je suis bien content qu'ils ne passent pas à x64, vu comme il est consommateur en RAM, la limitation due au Win32 est une bonne chose...
Avatar de Andarus Andarus - Membre averti https://www.developpez.com
le 17/11/2016 à 14:42
Pour être passer de 2008 à 2015 sur mon projet actuelle je n'est pas eu de problème particulier sur la version C++ en tout cas(Et l'amélioration d'intellisense je l'est bien vue ).
Avatar de sebbod sebbod - Membre habitué https://www.developpez.com
le 17/11/2016 à 15:47
Citation Envoyé par Spleeen Voir le message
En soit, je ne vois pas grand changement :

  • Inttellisense, ils en parlent à chaque fois. LA fonctionnalité phare et merveilleuse de VS. Mais enfin bon elle évolue peu.
  • On nous promet toujours moins d'embonpoint, mais l'installation est toujours une des plus lentes et des plus demandeuses qui soit (comme SQL Server...)
  • Une interface qui n'évolue pas dans le design, toujours bloqué à du Win32 de ce coté... avec les lenteurs des langages interprétés.


Disons que, du reste, ça avance... lentement mais surement. La concurrence elle ne traîne pas.
"avec les lenteurs des langages interprétés" : Pour ta gouvernante (<- blague de la tour Montparnasse infernal - Eric et Ramzy - oui je site les auteurs car la culture c'est important ) presque tous (sauf si tu écris directement en langage processeur) les langages sont interprétés, même l'assembleur oui oui lui aussi convertit ces mnémoniques en langage machine).
Long et semé d’embûche est le chemin de la connaissance jeune padawane . Tiens un peu de lecture ça peux pas faire de mal : http://www.developpez.net/forums/d59...ions-debutant/

(pendant que tu liras tu écriras pas )

"Inttellisense" : J'en ai tester plusieurs (Eclipse, NetBeans, Toad, etc...) aucune n'est aussi bien que celle de visual studio donc si tu as des arguments pour expliquer pourquoi elle evolue peu je suis lecteur car au lieu de rabaisser tu ferais mieux de construire

merci au plaisir de te lire dans un élan de construction
Avatar de Iradrille Iradrille - Expert confirmé https://www.developpez.com
le 17/11/2016 à 21:49
Citation Envoyé par sebbod Voir le message
"Inttellisense" : J'en ai tester plusieurs (Eclipse, NetBeans, Toad, etc...) aucune n'est aussi bien que celle de visual studio donc si tu as des arguments pour expliquer pourquoi elle evolue peu je suis lecteur car au lieu de rabaisser tu ferais mieux de construire
Toujours est-il qu'elle pourrait être bien meilleure, il suffit de voir à quelle point elle et améliorée par Resharper / Visual Assist.

Elle reste cependant très correcte de base.
Avatar de kilroyFR kilroyFR - Membre confirmé https://www.developpez.com
le 17/11/2016 à 21:57
J'avoue egalement que depuis que j'ai resharper (C#/C++) je ne trouve plus aucun interet a intellisence de M$.
Resharper est un budget mais ils ont malgré tout toujours un temps d'avance par rapport au evols d'intellisense.

Je ne comprends pas pourquoi au lieu de continuellement passer du temps a faire evoluer les interfaces ou apporter des details de fonctionnalités, M$ ne depense pas plus d'energie sur un vrai framework IHM (C++ par exemple type QT - pas WPF/SL car c'est plus envisageable sur nouveaux projets - je fais partie des deçus de ces technos). Bref des outils RAD pour le devpt (quand on voit les frameworks type php ou tpe webdev/windev, on se demande pourquoi ils continuent a se noyer dans des details de fonctionnalités de leur editeur uqi est desormais un mastondonte).
Avatar de tomlev tomlev - Rédacteur/Modérateur https://www.developpez.com
le 18/11/2016 à 0:38
Citation Envoyé par Spleeen Voir le message
On nous promet toujours moins d'embonpoint, mais l'installation est toujours une des plus lentes et des plus demandeuses qui soit (comme SQL Server...)
Tu as essayé de l'installer avant de dire ça ? L'installation est beaucoup plus rapide que les versions précédentes... par contre c'est sûr que ça prend toujours de la place, surtout quand tu commences à installer les outils de dev mobile et web.
Avatar de micka132 micka132 - Membre expert https://www.developpez.com
le 19/11/2016 à 4:08
La fonctionnalité « Exécuter jusqu’au clic » me conviendra parfaitement!

Citation Envoyé par kilroyFR Voir le message
M$ ne depense pas plus d'energie sur un vrai framework IHM (C++ par exemple type QT - pas WPF/SL car c'est plus envisageable sur nouveaux projets - je fais partie des deçus de ces technos).
Sans que ca ne soit forcement un gage de qualité pas mal de librairie JS sont développés pour être utilisé en MVVM, soit le concept issue de l'utilisation de Wpf. En quoi il ne serait pas un vrai Framework IHM? Qu'offre QT de plus, et qu'est ce que Microsoft devrait proposer?
Avatar de dfiad77pro dfiad77pro - Membre éprouvé https://www.developpez.com
le 19/11/2016 à 9:58
Citation Envoyé par micka132 Voir le message
La fonctionnalité « Exécuter jusqu’au clic » me conviendra parfaitement!

Sans que ca ne soit forcement un gage de qualité pas mal de librairie JS sont développés pour être utilisé en MVVM, soit le concept issue de l'utilisation de Wpf. En quoi il ne serait pas un vrai Framework IHM? Qu'offre QT de plus, et qu'est ce que Microsoft devrait proposer?
WPF est un excellent Framework (un des meilleur), mais difficile à maitriser (Perso ça m'a pris 3 ans et j'ai encore des surprises) .
QT a l'avantage de démarrer plus rapidement et d'être multiplateforme, mais le c++ les effraies ( Hashtag SS2I , #moutonA5Pattes).
Microsoft aurait du porter WPF sur linux , je pense que cela aurait vraiment porter .net au summum.

Contrairement à ce que beaucoup disent le concept de WPF n'est pas lié a directX. C'est la plomberie en dessous
Mais le porter sous open-gl sans légères différences visuels relèverai de l'exploit. Cf. JavaFX.

Le XAML de xamarin évolut, avec un peu de chance d'ici quelque temps ....

Bref entre le web (JEE,node, php...) qui demande :
- plein de techno et Framework a maitriser qui changent celons les modes.
- un développement lent pour l'IHM lorsqu'on utilise des grosses infra.
- ...

Je choisirai le client lourd qui parfois pose des soucis de portabilité... mais dans la réalité des faits je n'ai pas trop le choix, tout le monde veut du web sans forcément en comprendre les conséquences
Avatar de kilroyFR kilroyFR - Membre confirmé https://www.developpez.com
le 20/11/2016 à 5:34
Citation Envoyé par micka132 Voir le message
La fonctionnalité « Exécuter jusqu’au clic » me conviendra parfaitement!

Sans que ca ne soit forcement un gage de qualité pas mal de librairie JS sont développés pour être utilisé en MVVM, soit le concept issue de l'utilisation de Wpf. En quoi il ne serait pas un vrai Framework IHM? Qu'offre QT de plus, et qu'est ce que Microsoft devrait proposer?
La portabilité c'est essentiel en 2016 et l'impression de ne pas avoir perdu son temps a re-apprendre a developper from scratch comme avec SL/WPF.
Dans ma boite on a jete l"eponge avec SL/WPF definitivement car meme les gens formés ou "experts" (+sieurs années sur la techno) avaient du mal a stabiliser les applis (debogage des applis avec databinding et des evenements dans tous les sens c'est une vraie merde) et on ne peut pas se permettre de former des gens en permanence pour des dev bridés. A ce jour toutes les applis faites en WPF/SL ont eu besoin de basculer sur du client leger (demande client) et au final on a tout jeté... sauf les parties non visibles (DAL/WS etc.).
=> Moralité : les interfaces utilisateurs c'est du jetable, aucun interet d'y depenser trop d'energie et d'argent. Tous les 5 ans ca change (et on prend, on jette).
Developper selon l'etat de l'art pour ne pas recuperer grand chose a ete un gouffre sur nos projets WPF/SL (certains gars passaient leurs journées a faire du refactoring de code pour la beauté du code - enfin ca c'est un autre pb, celui du developpeur qui n'a pas compris qu'on vend du fonctionnel a un client, pas du code beau (qu'il ne verra jamais et dont il se fout royallement)).

On part du principe qu'on fait ce qu'un client veut (en l'occurence du client leger ou du mobile parce qu'il a l'habitude avec son telephone, il ne comprend pas souvent qu'on lui dise qu'une appli a ete developpée en client lourd). On ne developpe plus que des petits outils en client lourd (sur nos applis en tout cas).

Si j'etais Microsoft je developperai des outils RAD pour faire des applis IHMS mobile/leger (+lourd eventuellement) (façon windev meme si ce n'est pas "noble" ou pas valorisant sur le CV d'un developpeur etc.) portables (y compris ios).
Seulement quand on est ingenieur Ms on preferer passer du temps a faire joujou avec les ihms de Visual Studio et ajouter des gadgets sur une interface deja ENORMEMENT chargee.
et pendant ce temps sur ASP.net il faut continuer a acheter des librairies tierces (kendo, telerik, jqwidgets etc.) pour afficher correctement des controles grilles et autres...
Avatar de CS FS CS FS - Membre régulier https://www.developpez.com
le 20/11/2016 à 11:56
Il y a moins de ressources qualifiées pour du dev WPF que pour du dev Web, ça ne fait aucun doute, et c’est très certainement dû à la courbe d’apprentissage du C#/XAML qui n’est pas des plus accessibles.

Ça n’en reste pas moins une techno sans concurrence de mon point de vue.

WPF (et le client lourd de manière générale) répond à un besoin (le client léger est loin d’être la réponse universelle), à l’instar de la portabilité qui répond également à un besoin et ne doit pas être perçue comme le but ultime à atteindre.

Citation Envoyé par kilroyFR Voir le message
Seulement quand on est ingenieur Ms on preferer passer du temps a faire joujou avec les ihms de Visual Studio et ajouter des gadgets sur une interface deja ENORMEMENT chargee.
Ça c’est très condescendant.
On sent l’amertume dans ton message. Mais garde à l’esprit que c’est TON expérience ; de mon côté ça se passe très bien avec cette techno ^^
Contacter le responsable de la rubrique Accueil