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

Dotnet Discussion :

Roslyn : Microsoft utilise en interne son compilateur en tant que service


Sujet :

Dotnet

  1. #1
    Responsable .NET

    Avatar de Hinault Romaric
    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2007
    Messages
    4 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2007
    Messages : 4 570
    Points : 252 372
    Points
    252 372
    Billets dans le blog
    121
    Par défaut Roslyn : Microsoft utilise en interne son compilateur en tant que service
    Roslyn : Microsoft utilise en interne son compilateur en tant que service
    la nouvelle plateforme ambitionne d’ouvrir la boite noire qu’est un compilateur

    Roslyn, le compilateur en tant que service de Microsoft, s’approche de la version finale. Microsoft s’est mis au « dogfooding » (scénario pendant lequel une compagnie utilise ses propres produits pour démontrer ses qualités et capacités) avec la plateforme.

    Roslyn ambitionne non seulement de fournir un outil de compilation pouvant être utilisé dans le Cloud, mais également de démystifier cette étape du cycle de développement d’une application.

    Actuellement, un compilateur serait un peu comme une boite noire pour le développeur. Celui-ci sait globalement ce qui s’y passe et le résultat obtenu, mais ne peut exploiter les informations générées par le compilateur.


    Roslyn ouvre cette boite en mettant à la disposition des développeurs un ensemble d’API (Compiler API, Services API et Editor Services API) qu’ils peuvent exploiter pour inspecter et affiner leur code.

    L’API de compilation fournit les informations exposées à chaque étape du processus de compilation, à la fois sémantiques et syntaxiques. Les API Services peuvent être utilisées pour l’analyse de code, avec un accès direct à des modèles objets et à la couche de compilation. Edito Services API donne accès aux outils de l’éditeur de code de Visual Studio, notamment l’IntelliSence, le refactorisation, la coloration syntaxique, etc.

    Avec cette approche, le compilateur agit désormais comme un service, pouvant être consommé par une autre application écrite en C# ou Visual Basic. Chaque partie du processus de compilation peut être utilisée par un programme tiers.

    « Roslyn introduit un modèle de compilateur beaucoup plus ouvert, ce qui permettra aux développeurs de toucher l’intérieur même du compilateur, et de voir comment il fonctionne », explique Matt Gertz, développeur chez Microsoft.

    Roslyn a été entièrement écrit en C# et VB.NET (contrairement aux autres compilateurs de Microsoft qui ont été écrits en utilisant également C++). Le compilateur est entré dans une phase de test en interne. Il a été utilisé par les ingénieurs de Microsoft pour recompiler 60 000 projets, y compris des projets phares de la société, afin de tester ses performances.

    Roslyn sera lancé en version RTM dans un avenir proche, probablement lors de la conférence BUILD, qui est annoncée pour avril 2014.


    Source : Microsoft


    Et vous ?

    Que pensez-vous du projet Roslyn ?
    Vous souhaitez participer aux rubriques .NET ? Contactez-moi

    Si déboguer est l’art de corriger les bugs, alors programmer est l’art d’en faire
    Mon blog, Mes articles, Me suivre sur Twitter
    En posant correctement votre problème, on trouve la moitié de la solution

  2. #2
    Membre éclairé

    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2007
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 179
    Points : 653
    Points
    653
    Par défaut
    Ca peut apporter des choses.
    Mais quoi ? Certe le compilateur est une boite pseudo noir, mais on devrait savoir ce qu'il fait en théorie pour savoir ce qu'il ne faut pas faire en pratique.
    Si de ce coté ca aide les développeur .net c'est cool.
    Ca permetera d'avoir des outils de qualimétrie du code qui se branche directement dessus pour faire des rapport avec une intégration continue.

    La question que je me pose maintenant c'est est ce que ca existe dans d'autre langague (Java, pyton, PHP) ? Parce que je ne code pas en C# ni en .net.
    L'expérience est une lanterne que l'on porte sur le dos et qui n'eclaire jamais que le chemin parcouru.

    La nature fait les choses sans se presser, et pourtant tout est accompli.

  3. #3
    Expert confirmé Avatar de DonQuiche
    Inscrit en
    Septembre 2010
    Messages
    2 741
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 2 741
    Points : 5 485
    Points
    5 485
    Par défaut
    Que pensez-vous du projet Roslyn ?
    Qu'il était temps ! De CodeDom aux arbres d'expressions en passant par EnvDTE et compagnie, pas moyen d'avoir un foutu AST exhaustif et à jour. Sans même parler de leurs fonctionnalités respectivement limitées et de l’impossibilité de les faire interagir ensemble. Il fallait se tourner vers Mono ou la Common Language Infrastructure pour des solutions, chacune avec leurs faiblesses (absence de garantie pour l'avenir de CLI, possibles ruptures de l'API à l'avenir pour les deux, etc).

    Bref, dix années de gâchis qu'on espère bien vite oublier si Roslyn se montre aussi cool qu'on l'espère.

  4. #4
    Membre expérimenté Avatar de ctxnop
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Morbihan (Bretagne)

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

    Informations forums :
    Inscription : Juillet 2007
    Messages : 858
    Points : 1 732
    Points
    1 732
    Par défaut
    J'ai vraiment hâte ! J'ai beaucoup de projets en standby en attendant qu'il sorte.
    J'ai résolus certains trucs avec Mono.CSharp, mais il m'en reste d'autres sur lesquels je bloque (enfin, j'ai des solutions, mais qui ne valent pas l'investissement).
    Je fais beaucoup beaucoup de compilation au runtime, et de génération de code, ainsi que des possibilité de scripting. Alors ce que promet ce compilo ne peut que me réjouir.

  5. #5
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Mais pourquoi pas revenir à l'assembleur? C'est génial: on voit tout, on sait tout, on décide tout.
    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par FR119492 Voir le message
    Mais pourquoi pas revenir à l'assembleur? C'est génial: on voit tout, on sait tout, on décide tout.
    Jean-Marc Blanc
    J'ai l'impression que tu n'as pas bien compris de quoi il s'agit...

    L'intérêt de Roslyn est d'ouvrir les mécanismes internes du compilateur, ce qui permet d'accéder à l'abstract syntax tree, aux résultats de l'analyse sémantique, etc. Ça va permettre de réaliser plein d'outils d'analyse de code et de refactoring, sans se prendre la tête à recréer soi-même un parser. Ça n'a strictement rien à voir avec l'assembleur...

  7. #7
    Membre expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Points : 3 568
    Points
    3 568
    Par défaut
    Ca va permettre de faire un de ces Resharper ! Et bien plus encore. Faut suivre Matthieu Mezil, il est à fond dedans depuis les premières previews.
    Microsoft MVP : Windows Platform

    MCPD - Windows Phone Developer
    MCPD - Windows Developer 4

    http://www.guruumeditation.net

    “If debugging is the process of removing bugs, then programming must be the process of putting them in.”
    (Edsger W. Dijkstra)

Discussions similaires

  1. Réponses: 6
    Dernier message: 30/10/2014, 12h27
  2. RyuJIT : Microsoft dévoile la prochaine génération de son compilateur JIT
    Par Hinault Romaric dans le forum Général Dotnet
    Réponses: 3
    Dernier message: 03/10/2013, 10h20
  3. Réponses: 16
    Dernier message: 21/08/2009, 16h32
  4. Réponses: 2
    Dernier message: 24/08/2006, 17h48

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