IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual Studio Discussion :

Microsoft d�voile la pr�version de Visual Studio 2015


Sujet :

Visual Studio

  1. #121
    MikeRowSoft
    Invit�(e)
    Par d�faut
    Tiens tiens Update 1!?
    Microsoft aurait-il r�serv� le service pack pour du support technique termin�?

  2. #122
    R�dacteur
    Avatar de The_badger_man
    Profil pro
    D�veloppeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France, Yvelines (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Par d�faut
    Citation Envoy� par MikeRowSoft Voir le message
    Tiens tiens Update 1!?
    Microsoft aurait-il r�serv� le service pack pour du support technique termin�?
    Les services pack (correction de bugs) n'existent plus depuis Visual Studio 2010.

    Depuis Visual Studio 2012, il s'agit de mises � jour fonctionnelles.
    Les r�gles du forum
    Le trio magique : FAQ + Cours + fonction rechercher
    Mes articles
    Pas de questions par messages priv�s svp

    Software is never finished, only abandoned.

  3. #123
    MikeRowSoft
    Invit�(e)
    Par d�faut
    Citation Envoy� par The_badger_man Voir le message
    Les services pack (correction de bugs) n'existent plus depuis Visual Studio 2010.

    Depuis Visual Studio 2012, il s'agit de mises � jour fonctionnelles.
    Se qui veut dire mise � jour perp�tuelle (upgrade incluse) comme Ubuntu Linux?
    Les services packs se rapprochant plus des ISO de mise � jours de Debian Linux (sans upgrade il me semble)...

    En tous cas, merci, se "n'est pas tomb� dans les oreilles d'un sourd".

    [Les voitures pour aveugles sont unes r�alit�s]
    Derni�re modification par MikeRowSoft ; 02/12/2015 � 15h44.

  4. #124
    Chroniqueur Actualit�s

    Homme Profil pro
    Webmaster
    Inscrit en
    Janvier 2014
    Messages
    1 089
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Webmaster
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Janvier 2014
    Messages : 1 089
    Par d�faut Microsoft annonce la disponibilit� de la pr�version des outils R sur Visual Studio
    Microsoft annonce la disponibilit� de la pr�version des outils R sur Visual Studio
    ainsi que la sortie des outils Apache Cordova Update 7

    En janvier 2015, Microsoft a annonc� l�acquisition de Revolution Analytcs, l�entreprise ax�e sur le d�veloppement de solutions open source bas�es sur les versions libres et open source des logiciels R.

    Apr�s avoir ajout� cette entreprise � la liste des entreprises acquises, le g�ant du syst�me d�exploitation a entam� sa refonte en rebaptisant les outils Revolution R Open en Microsoft R Open et Revolution R Enterprise pour Hadoop, Linux et Teradata a �t� renomm� en Microsoft R Serveur. Microsoft R Server Developer Edition est une version gratuite propos�e aux d�veloppeurs avec des fonctionnalit�s semblables � la version commerciale.

    Lors de l�annonce du renommage de Revolution R Open, Joseph Sirosh, vice-pr�sident du groupe Microsoft Data, avait d�clar� que � Microsoft R Server sera inclus dans SQL Server 2016 comme �tant SQL Server R Services ï¿½. En attendant la version finale de SQL Server 2016, Microsoft vient de donner une information qui ne fera que ravir les utilisateurs de Visual Studio, l�environnement de d�veloppement int�gr� (EDI) de Microsoft.

    � Je suis ravi d�annoncer que Visual Studio parle maintenant une autre langue : R ï¿½, a d�clar� Shahrokh Mortazavi sur le billet de blog de la firme. R est un langage utilis� dans le domaine de l�analyse des donn�es scientifiques et pour la repr�sentation graphique de celles-ci. Les professionnels utilisant ce langage de programmation peuvent dor�navant utiliser les outils R en combinaison avec Visual Studio pour traiter et analyser leurs donn�es. Pour cela, il suffit d�installer Visual Studio et ensuite ajouter les outils R � l�environnement de d�veloppement.

    Ces outils qui sont disponibles en pr�version prennent en charge avec les �l�ments suivants dans l�EDI :

    • possibilit� d��diter les scripts R y compris les fen�tres et onglets d�tachables, la coloration syntaxique et bien plus encore ;
    • le code R est pris en charge par Intellisense afin de faire des appels de m�thode et propri�t�s et compl�ter le code de mani�re suggestive ;
    • l�explorateur de variables prend �galement en charge les structures de donn�es et examine aussi leurs valeurs ;
    • tout comme avec les autres langages, il est possible de d�boguer le code R en ajoutant des points d�arr�t, des piles d�appels, etc. ;
    • plusieurs extensions couvrant diff�rents aspects du langage R sont utilisables avec l�EDI ;
    • les utilisateurs du langage R peuvent �galement utiliser la fen�tre de l�historique pour parcourir, afficher, s�lectionner les commandes ant�rieurement ex�cut�es ;
    • la fen�tre interactive R fonctionne avec la console R directement dans Visual Studio. Les utilisateurs peuvent donc effectuer des boucles, �valuer, lire le code R directement dans la fen�tre ;
    • il est possible d�installer les packages Markdown/knitr afin d�afficher les donn�es en aper�u au format Word ou HTML et les exporter dans les m�mes formats ;
    • les outils R pour Visual Studio supportent les packages des d�p�ts CRAN.

    En plus de ces nouvelles fonctionnalit�s compatibles avec R, il faut �galement souligner qu�il est possible d'utiliser Visual Studio avec les packages disponibles sur les d�p�ts CRAN ou encore avec Microsoft R Open afin de disposer de certaines fonctionnalit�s telles que le support du traitement des processus sur des machines multiprocesseurs.

    Enfin, les outils R pour Visual Studio sont �galement compatibles avec Microsoft R Server et les SDK R qui permettent d�acc�der aux donn�es et espaces de travail et �galement sont utilis�s pour publier des mod�les sur Azure Machine Learning.

    En marge de l�annonce portant sur les outils R pour Visual Studio, Microsoft a �galement annonc� la disponibilit� de la 7e mise � jour des outils Visual Studio pour Apache Cordova (TACO). Dans cette nouvelle mise � jour de TACO, la version 6.0.0 de Cordova est utilis�e comme version par d�faut.

    Nous rappelons que Cordova est un framework open source permettant de cr�er des applications pour diff�rentes plateformes (Android, Firefox OS, iOS, Ubuntu, Windows 8, etc.) en HTML, CSS et JavaScript.

    Par ailleurs, il est maintenant possible de cr�er de nouveaux projets iconic pour des templates vierges, des templates pour onglets ou pour menus lat�raux. � noter que plusieurs correctifs ont �t� introduits dans les outils Visual Studio pour Apache Cordova Update 7.

    R Tools pour Visual Studio sur GitHub

    Source : Blog plateforme de donn�es (les outils R pour Visual Studio), Blog Visual Studio (les outils VS pour Apache Cordova Update 7)

    Et vous ?

    Avez-vous test� les outils R sur Visual Studio ? �tes-vous satisfaits de cette impl�mentation ?

    Que pensez-vous de la nouvelle mise � jour relative aux outils VS pour Apache Cordova ? Quels sont les �l�ments que vous souhaiteriez voir dans les prochaines versions ?

    Voir aussi

    Forum Visual Studio

  5. #125
    Chroniqueur Actualit�s

    Homme Profil pro
    Webmaster
    Inscrit en
    Janvier 2014
    Messages
    1 089
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Webmaster
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Janvier 2014
    Messages : 1 089
    Par d�faut Visual Studio 2015 Update 2 est disponible
    Visual Studio 2015 Update 2 est disponible
    l�EDI permet de g�n�rer des builds avec Gradle et offre la possibilit� d�importer des projets Xcode

    Depuis quelques jours, Visual Studio Update 2 est disponible. Dans cette nouvelle mise � jour, l�accent a �t� mis sur la stabilit�, les performances et la fluidit� des outils. De prime abord, l�on note que TACO, les outils pour Apache Cordova ont �t� am�lior�s.

    Dans la version ant�rieure de TACO int�gr�e � Visual Studio, l�on rencontrait parfois des conflits avec NodeJS. Pour r�gler le probl�me, NodeJS a �t� int�gr� dans un bac � sable afin de s�parer les processus avec les autres outils de l�EDI. Cela permet d��viter des mauvaises surprises lors du d�veloppement des applications avec la plateforme NodeJS. Il faut rappeler que dans la version 7 de TACO, le gestionnaire de package Node a eu droit au m�me traitement.

    En ce qui concerne les outils traditionnels de Visual Studio, l�on note que C++ a connu plusieurs am�liorations. Au niveau du compilateur, Microsoft explique que les coroutines qui sont encore en phase exp�rimentale peuvent �tre utilis�es en production maintenant. Nous rappelons que les coroutines sont similaires aux routines, mais se d�marquent de ces derni�res en ce sens qu�elles offrent la possibilit� de suspendre et reprendre explicitement leur ex�cution en utilisant des op�rations suppl�mentaires, alors que les routines s�ach�vent g�n�ralement lorsque les processus parents prennent fin.

    Toujours pour ce m�me langage, l��quipe de C++ a int�gr� dans cette version de Visual Studio Update 2 les fonctionnalit�s des biblioth�ques qui ont �t� vot�es dans C++ 11, C++ 14 et C++ 17. Par ailleurs, la fonction de d�bogage ucrtbased.dll a �t� retir�e de la version 14 SDK Microsoft.VCLibs. La firme explique avoir agi ainsi afin que les applications ne soient pas li�es � une version sp�cifique du SDK pour Windows 10.

    Toutefois, lorsque vous construirez vos applications, Visual Studio/MSBuild ins�rera automatiquement ucrtbased.dll dans l�application Windows con�ue. Mais pour les syst�mes incompatibles � MS Build, il va falloir int�grer manuellement ucrtbased.dll au fichier de l�application locale. Enfin, pour ce qui est de l�EDI pour C++, Microsoft affirme que le moteur de base de donn�es bas� sur SQLite est maintenant utilis� par d�faut.

    Un clin d��il a �t� �galement fait aux projets Android et iOS. Les d�veloppeurs C++ peuvent importer dans Visual Studio des projets Xcode et ceux qui le souhaitent peuvent g�n�rer des builds avec Gradle, l�outil privil�gi� des d�veloppeurs Android pour compiler des applications.

    En marge des am�liorations au niveau de C++, plusieurs perfectionnements ont �t� apport�s aux fonctionnalit�s C# et Visual Basic. Il est maintenant possible d�initialiser la fen�tre interactive C# pour un projet afin de permettre un acc�s instantan� aux types du projet. De m�me, vous pouvez envoyer des param�tres � la fen�tre interactive afin de tester une partie de votre code. Pour ce faire, vous devez utiliser la nouvelle commande � Execute In Interactive ï¿½.

    En plus de ces ajouts, il faut noter que le framework .Net 4.6.1 utilis� pour d�velopper les applications Windows Forms et WPF a accueilli le nouvel outil ClickOnce Bootstrapper. C�est un package qui permet de d�ployer facilement les applications d�velopp�es avec le framework .Net 4.6.

    L�extension de Nuget, le gestionnaire de package pour Visual Studio, a �t� am�lior�e avec la prise en charge des actions pour g�n�rer des builds pour Android et iOS ainsi que la possibilit� d�ex�cuter ce gestionnaire de package dans les environnements Linux et Apple.

    Parler de Visual Studio 2015 sans aborder principalement la plateforme Windows universelle laisserait un gout d�inachev� dans cette nouvelle version. En effet, dans cette nouvelle mise � jour, de nouveaux outils ont vu le jour. Ce sont Universal Windows SDK Version Picker pour s�lectionner la version du SDK Windows cibl�e avec la version minimum du syst�me sur lequel vos applications fonctionneront, un d�bogueur des processus de t�ches en arri�re-plan dans les applications Windows universelles et des am�liorations des outils de gestion des packages sur le store des applications Windows en sorte que lorsque des applications ont �t� associ�es au magasin en ligne, vous n�ayez plus � signer � nouveau pour cr�er un package pour une application sur le store.

    � c�t� de ces �l�ments, plusieurs autres �l�ments tels que les correctifs de bogues, de nouvelles fonctionnalit�s et l�am�lioration des performances de certains outils ont �t� impl�ment�s

    Source : Visual Studio News

    Et vous ?

    Avez-vous test� cette nouvelle version de Visual Studio ? Comment la trouvez-vous ?

    Quelles sont les fonctionnalit�s que vous aimez le plus ou le moins ?

    Voir aussi

    Forum Visual Studio

  6. #126
    Expert confirm�

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, H�rault (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par d�faut
    Bonjour,

    Une autre nouveaut� importante de l'Update 2 pour C++ concerne les modules (cr�ation de "packages" en C++ au lieu des classiques fichiers headers). Des am�liorations importantes ont �t� faites pour les rendre utilisables (c'est ce qu'ils disent, moi j'ai pas pu tester encore!).

    Citation Envoy� par Olivier Famien Voir le message
    Nous rappelons que les coroutines sont similaires aux routines, mais se d�marquent de ces derni�res en ce sens qu�elles offrent la possibilit� de suspendre et reprendre explicitement leur ex�cution en utilisant des op�rations suppl�mentaires, alors que les routines s�ach�vent g�n�ralement lorsque les processus parents prennent fin.
    Je n'ai pas trouv� ce passage tr�s clair, aussi je partage ma propre explication Une coroutine c'est une fonction qui peut �tre interrompue dans son ex�cution qu'elle reprendra l� o� elle l'avait laiss� � son prochain appel. Une fonction classique termine son ex�cution lors d'un appel � "return". Dans le cas d'une coroutine, si elle return, alors oui c'est fini. Mais elle peut aussi rendre la main � l'appelant en plein milieu de son ex�cution, pour reprendre ensuite (lors de son prochain appel) l� o� elle s'�tait arr�t� (au lieu de tout recommencer au d�but). La coroutine est en quelque sorte au thread ce que le thread est au processus.

    L'int�r�t concerne la programmation asynchrone. Au lieu de d�couper la logique du code en deux parties (par exemple : lecture des donn�es sur une socket, puis traitement des donn�es re�ues), on simule une ex�cution synchrone classique. Sauf que au lieu de rester bloqu� sur un op�ration d'E/S (lecture de la socket), on rend la main � l'appelant qui peut faire autre chose pendant ce temps. Ca �vite de cr�er des threads � tout bout de champ (l'id�e est d'avoir des milliers de coroutines) ou d'avoir un code asynchrone difficile � lire (�clat� en plein de callbacks).

  7. #127
    Membre confirm� Avatar de Jonyjack
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Avril 2011
    Messages
    149
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2011
    Messages : 149
    Par d�faut
    Citation Envoy� par Aurelien.Regat-Barrel Voir le message
    Je n'ai pas trouv� ce passage tr�s clair, aussi je partage ma propre explication Une coroutine c'est une fonction qui peut �tre interrompue dans son ex�cution qu'elle reprendra l� o� elle l'avait laiss� � son prochain appel. Une fonction classique termine son ex�cution lors d'un appel � "return". Dans le cas d'une coroutine, si elle return, alors oui c'est fini. Mais elle peut aussi rendre la main � l'appelant en plein milieu de son ex�cution, pour reprendre ensuite (lors de son prochain appel) l� o� elle s'�tait arr�t� (au lieu de tout recommencer au d�but). La coroutine est en quelque sorte au thread ce que le thread est au processus.
    Merci c'est plus clair en effet ! Ca me fait penser au "yield" de C#

  8. #128
    Expert confirm�

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, H�rault (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par d�faut
    Citation Envoy� par Jonyjack Voir le message
    Merci c'est plus clair en effet ! Ca me fait penser au "yield" de C#
    Et pour cause, c'est exactement �a ! Sauf qu'en C++ les mots-cl�s retenus sont finalement co_await, co_return et co_yield (afin d'�viter d'entrer en collision avec ces symboles dans du code existant).

  9. #129
    Membre tr�s actif
    Homme Profil pro
    Architecte de syst�me d'information
    Inscrit en
    Ao�t 2014
    Messages
    476
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 56
    Localisation : France, Ain (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Architecte de syst�me d'information

    Informations forums :
    Inscription : Ao�t 2014
    Messages : 476
    Par d�faut
    J'avoue que concernant les MODULES en C++ je n'ai pas bien compris la reelle utilit� par rapport a un .h/.lib habituel...

    faire
    IMPORT myModule;
    ou
    #include <myModule.h>

    Je suis preneur de toute explication qui me donnerait une vision sur le reel benefice de ce qui s'apparente plus a une nouvelle syntaxe (inutile ?) qu'autre chose.

  10. #130
    Expert confirm�

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, H�rault (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par d�faut
    Citation Envoy� par kilroyFR Voir le message
    J'avoue que concernant les MODULES en C++ je n'ai pas bien compris la reelle utilit� par rapport a un .h/.lib habituel...

    faire
    IMPORT myModule;
    ou
    #include <myModule.h>

    Je suis preneur de toute explication qui me donnerait une vision sur le reel benefice de ce qui s'apparente plus a une nouvelle syntaxe (inutile ?) qu'autre chose.
    Le premier int�r�t est au niveau du temps de compilation : ton header est pars� une seule fois lorsque tu build ton projet au lieu de l'�tre � chaque inclusion (utilisation d'un fichier pr�-pars� binaire � la place, un peu comme un PCH).

    Il y a d'autres int�r�ts, pr�sent�s dans le papier de Microsoft (lire l'intro):
    1. componentization;
    2. isolation from macros;
    3. scalable build;
    4. support for modern semantics-aware developer tools.
    5. Furthermore, the proposal reduces opportunities for violations of the One Definition Rule (ODR), and increases practical type-safe linking. An implementation of these suggestions is ongoing in the Microsoft C++ compiler.

    et aussi du c�t� de clang:
    http://clang.llvm.org/docs/Modules.h...-current-model

    Une autre fa�on d'aborder le sujet est qu'un langage moderne ne peut pas reposer sur un m�canisme aussi primaire que l'inclusion textuelle (qui d�stabilise beaucoup de d�butants).

  11. #131
    Membre tr�s actif
    Homme Profil pro
    Architecte de syst�me d'information
    Inscrit en
    Ao�t 2014
    Messages
    476
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 56
    Localisation : France, Ain (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Architecte de syst�me d'information

    Informations forums :
    Inscription : Ao�t 2014
    Messages : 476
    Par d�faut
    ouep je suis pas vraiment convaincu - c'est compliqu� pour un debutant de comprendre les inclusions de .h ?
    Ca me fait penser a ceux qui ne veulent pas faire du SQL parce que c'est jug� trop compliqu� mais par contre utilisent des BDD noSql type MongoDb avec des syntaxes barbares completement illisibles, non norm�es etc.

    Pour l'optimisation des temps de compil il y a les entetes pre-compil�es. Visiblement quelque chose qui va en plus encore bouger

    1. componentization = comme une librairie donc ? (librairie ca fait pas moderne certainement)
    2. isolation from macros = en quoi les macros posent pb en debut de fichier - ca permet d'eviter de traiter N fois le meme fichier d'entete au contraire !
    3. scalable build => entetes precompil�es ca sert a ca pourtant
    4. support for modern semantics-aware developer tools => l� on est plutot dans des "concepts" qui me paraissent tres abstraits
    Furthermore, the proposal reduces opportunities for violations of the One Definition Rule (ODR), and increases practical type-safe linking => idem 4

    "qu'un langage moderne ne peut pas reposer sur un m�canisme aussi primaire que l'inclusion textuelle (qui d�stabilise beaucoup de d�butants)."
    => alors pour ne pas comprendre les principes d'inclusion textuelles on invente autre chose encore plus illisible.
    J'ai l'impression qu'il aurait ete utile de rapprocher le C++ des autres langages "modernes" L4G style C#, Java (ajouter les propriet�s etc.)

    J'ai plus l'impression qu'ils ont essay� de placer les mots cl�s a la mode du moment 'scalable', 'isolation', 'component', 'modern' ...qu'un reel gain de productivit� ou d'architecture logiciel.
    Par ailleurs dans le document : http://clang.llvm.org/docs/Modules.h...-current-model
    il y a plus de problemes non resolus que de REELS problemes resolus (pas de gestion de namespace donc conflits potentiels, pas de versioning, description des fonctions non lisibles dans les fichiers binaires de 'package').
    Autant faire des nugets de librairies + entetes precompil�es et on a tous les avantages sans les inconvenients.


    Merci pour le lien vers site microsoft je vais quand meme le relire dans les details.

  12. #132
    R�dacteur/Mod�rateur
    Avatar de JolyLoic
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2004
    Messages
    5 463
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 51
    Localisation : France, Yvelines (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Ao�t 2004
    Messages : 5 463
    Par d�faut
    Le probl�mes des PCH, c'est qu'ils ne sont pas composables. Tu ne peux pas dire je prend le PCH li� � la lib A, et celui de la lib B, et je les fait tourner ensemble. Tu es oblig� de faire un PCH sp�cifique qui ne marche que quand tu utilises A puis B.

    Donc les PCH sont sp�cifiques � chaque projet, et doivent �tre g�n�r�s dans chaque cas. Et se pose la question de savoir ce qu'on met dedans, et ce qu'on garde sous forme de #include en dehors du PCH. Si on n'en met pas assez, on est trop lent, si on en met trop, � chaque compilation incr�mentale, on va devoir re-g�n�rer l'ensemble du PCH et perdre du temps.

    On peut voir les modules comme des PCH mais qui sont composables, et o� tu aurais un PCH par header (ou groupe de headers �troitement li�s). Tu as g�n�r� le code pr�compil� pour A, celui pour B, tu peux les utiliser s�par�ment ou ensemble, dans l'ordre que tu veux. Du coup, quand tu livres ta biblioth�que, tu livres le pr�compil� avec qui peut directement �tre r�utilis�. Jamais tu n'auras besoin de le code client de parser les headers de cette biblioth�que. Pourquoi peut-on faire �a avec les modules, mais pas avec les PCH ? Voir ma r�ponse � la seconde question.


    isolation from macros = en quoi les macros posent pb ?
    Ce sont elles qui emp�chent toute composabilit�. Quand tu inclues un .h dans ton code, la mani�re de l'interpr�ter d�pend de l'ensemble des macros d�finies au moment o� tu l'inclues. Qui n'a jamais eu sous windows un probl�me pour inclure un header d'une biblioth�que third party apr�s un #include <windows.h> parce ce dernier d�finit une macro min... L'id�e de base est qu'un module ne d�pende pas des macros d�finies avant qu'il soit import�, et qu'en retour, il ne pollue pas l'environnement avec ses propres macros. Et l�, la modularit� commence � appara�tre.
    Je dis "l'id�e de base" parce que certains aimeraient bien pouvoir dire que s�lectivement, telle ou telle macro d�finie dans un module pourrait �tre visible de l'ext�rieur. C'est en discussion.

    il y a plus de problemes non resolus que de REELS problemes resolus (pas de gestion de namespace donc conflits potentiels, pas de versioning, description des fonctions non lisibles dans les fichiers binaires de 'package').
    Je ne pense pas qu'il s'agisse forc�ment de r�els probl�mes, mais d'une simple description de ce que les modules ne sont pas, pour �viter les confusions :

    Namespaces : Certains langages (Java par exemple) lient structure physique du code (modules, fichiers source) et structure logique (namespaces, classes). D'autres ne le font pas (C# par exemple). La proposition de module pour le C++ choisi de ne pas le faire. Ce n'est en rien une limitation, mais un choix qui fait sens en C++ (sinon, comment ajouter une sp�cialisation de std::hash ?).
    Versionning : On a d�j� tous des outils pour g�rer les versions, tu as parl� de nuget par exemple, je ne vois pas trop quel r�le les modules pourraient jouer l� dedans, � part �ventuellement en terme de r�flexion, qui peut toujours s'ajouter.
    Binary distribution : C'est un probl�me potentiel. Mais d'un autre c�t�, les autres langages ont bien r�ussi � r�soudre ce probl�me. Quand on distribue une assembly .NET, c'est bien un binaire qu'on distribue, et �a fait d�j� 15 ans que �a dure sans probl�mes. Ce qui va �tre plus dur est d'avoir un format compatible entre diff�rents vendeurs (Microsoft a propos� d'open-sourcer le sien, Clang a dit qu'il �tait hors de question qu'ils l'utilisent). Mais la situation ne sera pas pire que ce qu'elle est aujourd'hui : On risque de devoir quand m�me compiler une biblioth�que pour le compilo qu'on utilise, comme on le fait aujourd'hui. C'est juste qu'on risque aussi de ne pas avoir besoin de le faire, si le mainteneur de la biblioth�que nous fourni un module compil� pour notre compilateur, chose qui �tait tr�s difficile avant, � cause des multiplicit�s de gestions de macros. Donc la situation ne devient pas parfaite, mais elle s'am�liore quand m�me.

    Et sinon, pour avoir expliqu� � pas mal de d�butants, oui, les #include, c'est compliqu�. Et parfois m�me des professionnels aguerris gal�rent pendant des heures pour faire un #include dans certains contextes...
    Ma session aux Microsoft TechDays 2013 : D�velopper en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage � la d�couverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'h�sitez pas � me contacter.

  13. #133
    Membre tr�s actif
    Homme Profil pro
    Architecte de syst�me d'information
    Inscrit en
    Ao�t 2014
    Messages
    476
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 56
    Localisation : France, Ain (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Architecte de syst�me d'information

    Informations forums :
    Inscription : Ao�t 2014
    Messages : 476
    Par d�faut
    Merci de tes reponses claires !

    Perso je vais attendre encore quelques ann�es que ca se stabilise tout en surveillant regulierement comment ca evolue.

  14. #134
    Expert confirm�

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, H�rault (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par d�faut
    Citation Envoy� par kilroyFR Voir le message
    ouep je suis pas vraiment convaincu - c'est compliqu� pour un debutant de comprendre les inclusions de .h ?
    Il faut croire que oui. Le d�butant en C++ n'est pas forc�ment un d�butant en programmation. Il semble - d'apr�s les retours que j'ai eu et que Lo�c semble confirmer aussi - que ce syst�me est compl�tement incompr�hensible pour les d�veloppeur C#/Java par exemple. L'autre impact n�gatif du pr�processeur c'est qu'au niveau des outils bas�s sur le parsing de code, il contribue � rendre les choses encore plus complexes � faire correctement. Cela expliquerait en partie les lacunes de C++ � ce niveau.

    La remarque sur l'ODR n'est malheureusement pas un "concept tr�s abstrait", mais une r�alit� douloureuse. Sous VC++ par exemple, il est facile (moins qu'avant gr�ce � quelques pr�cautions prises par MS) d'avoir des probl�mes avec la STL si tu d�sactives les checked iterators sur certains projets et pas d'autres via un define (indirect) diff�rent de _ITERATOR_DEBUG_LEVEL. Et la cons�quence, ce sont des crashs incompr�hensibles � l'ex�cution... C'est tr�s complexe � identifier m�me pour un d�veloppeur confirm� !

    Citation Envoy� par kilroyFR Voir le message
    Autant faire des nugets de librairies + entetes precompil�es et on a tous les avantages sans les inconvenients.
    Note que les PCH (VC++ en tous cas) ne peuvent pas �tre livr�s car ils sont sp�cifiques � la machine de build (et m�me � la version mineure du compilo).

    Mais ce n'est pas le sujet : il n'est en effet pas question de g�n�rer des modules qui soit livrables / redistribuables sous forme binaire. Le but est d'amorcer le mouvement vers un meilleur syst�me. Le syst�me actuel fonctionne on est d'accord, mais montre vite ses limites sur des gros projets. Les PCH ont �t� rapidement invent�s pour am�liorer les choses, mais il s'agit plus d'un hack que d'une vraie solution (Lo�c l'a tr�s bien expos�). Donc si tu veux, on peut voir cette proposition comme la normalisation d'un meilleur syst�me de PCH Encore une fois, cela intervient juste lors de la compilation. On ne redistribue pas le fichier IFC g�n�r�.

    Citation Envoy� par JolyLoic Voir le message
    Ce qui va �tre plus dur est d'avoir un format compatible entre diff�rents vendeurs (Microsoft a propos� d'open-sourcer le sien, Clang a dit qu'il �tait hors de question qu'ils l'utilisent)
    Ce qui pousse Microsoft � documenter son format c'est aussi de ne pas se faire taxer de solution ferm�e / propri�taire. Ce que clang (Google en fait) craint, c'est que l'approche MS s'impose par rapport � la leur. Car in fine c'est un peu les besoins de Microsoft vs les besoins de Google cette histoire (Google fait beaucoup de distribution de compilation...).

  15. #135
    R�dacteur/Mod�rateur
    Avatar de JolyLoic
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2004
    Messages
    5 463
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 51
    Localisation : France, Yvelines (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Ao�t 2004
    Messages : 5 463
    Par d�faut
    Citation Envoy� par Aurelien.Regat-Barrel Voir le message
    Mais ce n'est pas le sujet : il n'est en effet pas question de g�n�rer des modules qui soit livrables / redistribuables sous forme binaire. Le but est d'amorcer le mouvement vers un meilleur syst�me.
    Sur ce point, je suis loin d'�tre convaincu. Je pense que les gens qui livrent d�j� leurs biblioth�ques sous forme binaire vont regarder �a de pr�s...
    Citation Envoy� par Aurelien.Regat-Barrel Voir le message
    Ce qui pousse Microsoft � documenter son format c'est aussi de ne pas se faire taxer de solution ferm�e / propri�taire. Ce que clang (Google en fait) craint, c'est que l'approche MS s'impose par rapport � la leur. Car in fine c'est un peu les besoins de Microsoft vs les besoins de Google cette histoire (Google fait beaucoup de distribution de compilation...).
    Ce que je voudrais �viter, c'est que �a se fasse au d�triment des utilisateurs et des outils autour du C++, surtout si le point pr�c�dent devient av�r�...
    Ma session aux Microsoft TechDays 2013 : D�velopper en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage � la d�couverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'h�sitez pas � me contacter.

  16. #136
    Expert confirm�

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, H�rault (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par d�faut
    Citation Envoy� par JolyLoic Voir le message
    Sur ce point, je suis loin d'�tre convaincu. Je pense que les gens qui livrent d�j� leurs biblioth�ques sous forme binaire vont regarder �a de pr�s...
    C'est clair. Moi le premier je compte �valuer la possibilit� de packager le fichier .ifc avec sa dll.

    Apr�s, officiellement, c'est pas la position d�fendue par Microsoft (GDR). Malgr� tout �a reste un point qui irrite du monde. Google comme tu l'as dit. Mais y'a le mec de SONY qui, je sais pas pourquoi, �tait furax � l'id�e que les utilisateurs puissent tripatouiller le format ifc de MS.

    C'est un peu dommage, car sur le papier, c'est prometteur ce format. C'est - si j'ai bien compris - le fruit de beaucoup d'ann�es de travail de la part de GDR, bien avant qu'il soit chez MS (format binaire de repr�sentation d'un AST C++).

Discussions similaires

  1. Microsoft publie la pr�version de Visual Studio 14
    Par Hinault Romaric dans le forum Visual Studio
    R�ponses: 20
    Dernier message: 01/09/2014, 08h33
  2. R�ponses: 0
    Dernier message: 12/04/2011, 15h13
  3. Microsoft sort � Lab Management � pour Visual Studio 2010
    Par Idelways dans le forum Actualit�s
    R�ponses: 0
    Dernier message: 23/08/2010, 13h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo