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

  1. #1
    Responsable .NET

    Open source : Microsoft lance la .NET Foundation
    Open source : Microsoft lance la .NET Foundation
    et publie le compilateur Roslyn et WinJS sous licence Apache 2.0

    Un nouveau PDG, un nouveau visage pour Microsoft. Il est très loin l’époque ou l’ancien PDG de la société Steve Ballmer traitait l’open source de cancer.

    Microsoft, lors de la conférence Build, a dévoilé sa stratégie sous les commandes de Satya Nadella, qui accorde une place de choix à l’open source dans son univers.

    Après la création de Microsoft Open Technologies, sa filiale dédiée au développement des solutions open souce, Microsoft annonce le lancement de .NET Foundation, afin de créer un environnement collaboratif ouvert autour de .NET.

    Le but de ce nouvel organisme est de coordonner et accélérer le processus de développement des solutions autour de la plateforme .NET, par la participation communautaire, l’innovation rapide et la promotion de l’ouverture. « Nous allons servir de forum pour les développeurs commerciaux et communautaires, tout en offrant un ensemble de pratiques et de processus qui renforceront l’avenir de l’écosystème .NET », a déclaré Scott Guthrie, responsable de la division Cloud de Microsoft, lors de sa keynote pendant la conférence Build.

    .NET Foundation sera un organisme indépendant, qui sera dirigé pour un début par un comité de trois membres, dont un responsable de Microsoft Open Technologies, le PDG de Xamarin Miguel de Icaza et un membre provenant de GitHub.

    Miguel de Icaza est un pionnier de l’écosystème de l’open source, reconnu pour avoir été à l’origine de l’environnement de bureau Linux GNOME. Sa société s’occupe du développement de Mono, l’implémentation open source de .NET, qui permet d’ouvrir les systèmes non Windows (Linux, Mac, Android et iOS) aux développeurs C#.

    A son lancement, .NET Foundation avait déjà dans ses registres 24 projets open source à superviser, dont plusieurs bibliothèques .NET de Microsoft.

    Par ailleurs, Microsoft a annoncé la publication sous licence open source Apache 2 du compilateur en tant que service Roslyn. 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 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.

    Roslyn atteindra bientôt sa première version stable et Xamarin compte l’intégrer dans ses produits.

    Microsoft ne s’est pas arrêté là, et a également publié en open source ses API JavaScript pour Windows. WinJS avait été développé pour permettre aux développeurs de créer des applications sous Windows 8 en utilisant le couple JavaScript/HTML5.

    En transférant le projet à sa division open source, Microsoft espère faciliter le développement d’applications multiplateformes pour Windows, Android, iOS et autres. Le code de WinJS est disponible sous licence Apache 2 sur Github.


    Source : Microsoft


    Et vous ?

    Que pensez-vous de la stratégie de Microsoft ?
    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
    Rédacteur/Modérateur

    Je sais pas qui c'est qui "moinsse" systématiquement toutes les news concernant Microsoft, mais il se garde bien d'expliquer ouvertement son point de vue... Pourtant je ne vois pas très bien ce qu'on peut trouver de négatif dans cette actu.

    En tous cas le compilateur C# et VB.NET en open-source, c'est assez énorme comme annonce

    On notera aussi que les nouvelles features de C# 6 et VB 13, sont visibles sur cette page. Celles qui sont déjà implémentées sont d'ores et déjà testables dans la dernière preview de Roslyn.

  3. #3
    Membre confirmé
    J'étais à la Build : ceux qui ne voient pas l'intérêt peuvent aller voir la keynote du jour 2 (modification du compilateur pour ajouter les guillemets français), ainsi que "The future of c#" (http://channel9.msdn.com/Events/Build/2014/2-577) où il y a une démo de ce que l'on peut faire avec Roslyne avec notamment l'ajout de sorte de plug-in qui s'ajoute au compilateur sur tels ou tels types d'éléments analysés afin de faire notre propre analyser et de proposer des corrections si besoin. (Dans l'exemple, ils recherchent les if / else sans bloc et ils suggèrent d'en rajouter et propose de corriger avec un simple clic).

    Pour répondre à la question, je pense que Microsoft va dans la bonne direction. Ils ne sont pas en avance, ont même de légers retards, mais c'est un peu comme un rouleau compresseur : ils accélèrent la cadence et ramasse tout sur leur passage. Le mot d'ordre de la conf. : on attends vos feeds back, participez aux projets OSS.

  4. #4
    Membre habitué
    Personnellement, j'ai du mal a suivre la stratégie d'ouverture de Microsoft-Miguel-Nat vis à vis de la platforme .NET.
    - Les premières version sont ECMA et la communauté Open-source répond présent.
    - Miguel et Nat créer Ximian et Mono (1999)
    - Mono est racheté par Novell (2003)
    - Attachmate achète Novell et pourris Mono
    - Miguel et Nat créer Xamarin (2011)
    - Création de Microsoft Open Technologies
    - Une grosse partie du Framework .NET devient open-source (http://referencesource.microsoft.com/)
    - Création .NET Foundation (http://www.dotnetfoundation.org/)
    - Roslyn en open-source
    - .NET Foundation reprend des parties de Xamarin

    Même si open-source c'est mieux que closed-source, open-source ne veux pas dire forcément "free". Xamarin est d'ailleurs un produit Freenium (certaines limites en free).
    J'aurais du mal a collaborer gratuitement pour un produit qui me demande de payer une licence. Payer pour apporter sa contribution c'est un peu le monde a l'envers...

  5. #5
    Rédacteur/Modérateur

    Citation Envoyé par Heptaeon Voir le message
    - Une grosse partie du Framework .NET devient open-source (http://referencesource.microsoft.com/)
    .NET n'est pas open-source, du moins pas au sens usuel du terme. Le code source est disponible à titre informatif, mais tu ne peux rien en faire. Tu ne peux pas le télécharger et le recompiler chez toi, il manque trop d'éléments. Tu ne peux pas le forker ou proposer tes contributions (sauf pour les parties de .NET qui sont effectivement open-source bien sûr)

    Citation Envoyé par Heptaeon Voir le message
    J'aurais du mal a collaborer gratuitement pour un produit qui me demande de payer une licence. Payer pour apporter sa contribution c'est un peu le monde a l'envers...
    J'ai l'impression que tu mélanges un peu tout. Les produits open-source dont il est question sont gratuits (les compilateurs C# et VB.NET font partie du .NET SDK, qui a toujours été gratuit). Ce qui est payant, c'est l'IDE Visual Studio, et il n'est pas open-source.

  6. #6
    Rédacteur

    En fait, il faut attendre de voir quelle est la stratégie derriere cet open sourcing

    - abandon (type flex/openoffice ou google wave)
    - créer une vraie communauté et étendre le projet
    - opensourcer juste pour lutter contre llvm et java coté compilateur (typiquement java (au sens jvm) apres avoir été pas mal en retard, semble avoir une communauté de créateurs de langages bien plus importante que .net alors que a un moment c'était vraiment le contraire)

    en tous cas, la license apache est une vraie bonne surprise de la part de microsoft

  7. #7
    Membre confirmé
    Citation Envoyé par tomlev Voir le message
    .NET n'est pas open-source, du moins pas au sens usuel du terme. Le code source est disponible à titre informatif, mais tu ne peux rien en faire. Tu ne peux pas le télécharger et le recompiler chez toi, il manque trop d'éléments. Tu ne peux pas le forker ou proposer tes contributions (sauf pour les parties de .NET qui sont effectivement open-source bien sûr)



    J'ai l'impression que tu mélanges un peu tout. Les produits open-source dont il est question sont gratuits (les compilateurs C# et VB.NET font partie du .NET SDK, qui a toujours été gratuit). Ce qui est payant, c'est l'IDE Visual Studio, et il n'est pas open-source.
    C'est bien open source aux termes attendus (Apache licence v2).

  8. #8
    Rédacteur/Modérateur

    Citation Envoyé par Sirus64 Voir le message
    C'est bien open source aux termes attendus (Apache licence v2).
    Qu'est-ce qui est bien open-source ? Le nouveau compilateur (Roslyn) est effectivement sous licence Apache v2. Le code de .NET disponible ici, la licence est la MICROSOFT REFERENCE SOURCE LICENSE (MS-RSL), qui dit notamment :

    2. Grant of Rights

    (A) Copyright Grant- Subject to the terms of this license, the Licensor grants you a non-transferable, non-exclusive, worldwide, royalty-free copyright license to reproduce the software for reference use.

    (B) Patent Grant- Subject to the terms of this license, the Licensor grants you a non-transferable, non-exclusive, worldwide, royalty-free patent license under licensed patents for reference use.
    Et que signifie "reference use" ?

    "Reference use" means use of the software within your company as a reference, in read only form, for the sole purposes of debugging your products, maintaining your products, or enhancing the interoperability of your products with the software, and specifically excludes the right to distribute the software outside of your company.
    Donc pas grand chose à voir avec la licence Apache v2... Le code est dispo uniquement pour information (ce qui d'ailleurs est déjà pas mal)

  9. #9
    Membre confirmé
    Ce qui est open source sous licence Apache 2.0, c'est .net foundation : http://www.dotnetfoundation.org. Et c'est déjà un très bon début.

    Pour xamarin, Miguel de Icaza a présenté une démo sous mac qui peut utiliser roslyn comme compilateur. Il ne manque plus que les fondations de .net et le principal est open source. De toute façon, MS ne vend pas le Framework mais des licences msdn et windows. Donc je ne vois pas l'intérêt qu'il aurait de ne pas libérer le code.

    La seul chose qui m'inquiète c'est la compilation native (avec comme application par exemple, de produire du il, le store le distribut dans le bon format, soit x64, soit arm) . Outre le gain de rapidité (et des options d'autoparallelisation qu'ils ajoutent), il a été avancé l'argument de l'offuscation de code. Hors pour moi c'était un avantage de pouvoir facilement décompiler le code....

  10. #10
    Rédacteur/Modérateur

    Citation Envoyé par Sirus64 Voir le message
    Ce qui est open source sous licence Apache 2.0, c'est .net foundation
    [...]
    Il ne manque plus que les fondations de .net et le principal est open source.
    Attention, .NET Foundation, ce n'est pas "les fondations de .NET", c'est une fondation qui gère les projets open-source de Microsoft, dont le .NET framework proprement dit ne fait pas (encore) partie. Ca couvre pas mal de projets intéressants, mais pour l'instant la Base Class Library (c'est à dire tous les assemblies "de base", mscorlib, System, System.Data, System.Core (Linq), Windows Forms, WPF etc) ne sont pas gérés par cette fondation. Mais peut-être que ça viendra...

    Citation Envoyé par Sirus64 Voir le message
    Donc je ne vois pas l'intérêt qu'il aurait de ne pas libérer le code.
    Au point où ils en sont, je suis assez d'accord... Pour l'instant un des principaux inconvénients de Mono (à mon sens) est qu'il n'inclue pas WPF, mais si c'était open-sourcé, ça pourrait changer.

    EDIT: à ce sujet, je viens de tomber là-dessus :

    http://www.zdnet.com/microsofts-open...ry-7000028109/

    So will Microsoft take the next step and open source the core of .Net, including the Base Class Libraries (BCL) and Common Language Runtime (CLR)?

    "We are taking it one step at a time," said Somasegar. "If it's truly beneficial for us and for the community," Microsoft will consider it, Somasegar said. But there has to be a proven need, he emphasized. For example, Microsoft provided Xamarin with the BCL documentation late last week given that company's proven need for it.
    Donc c'est de l'ordre du possible

  11. #11
    Expert éminent
    Effectivement, pas grand chose de négatif dans cette news. Et la clarification de la position officielle de .Net vis à vis de l'open source permettra je pense de donner plus de crédibilité à mono et de lever les réticences de ceux qui jugeaient les garanties de MS (pourtant déjà assez concrètes) insuffisantes. Lorsque j'avais évalué mono j'avais moi-même eu certains points de blocage, notamment parce que le projet avait perdu son principal sponsor (Novell sauf erreur?) et que Xamarin semblait plus intéressé par les le mobile et ses produits plus "monétisables" que par l'aspect plus desktop et web.

    Citation Envoyé par tomlev Voir le message

    Au point où ils en sont, je suis assez d'accord... Pour l'instant un des principaux inconvénients de Mono (à mon sens) est qu'il n'inclue pas WPF, mais si c'était open-sourcé, ça pourrait changer.
    Pour ma part, c'est l'absence de support et de compatibilité des grandes suites de composants commerciales qui me bloque. Du coup plus de super composants winforms ou asp.net qui déchirent , plus tellement de solution d'impression convenable si ce n'est un pont JasperReport/Birt avec java. Bref, avec ça, les grands avantages de .Net par rapport à java s'effondrent. Bien dommage car il y avait eu de bons signaux de la part de Telerik de porter ses produits sous mono mais ça ne s'est virtuellement jamais fait.

  12. #12
    Rédacteur/Modérateur

    Citation Envoyé par _skip Voir le message
    Du coup plus de super composants winforms ou asp.net qui déchirent , plus tellement de solution d'impression convenable si ce n'est un pont JasperReport/Birt avec java.
    Pour ASP.NET c'est surprenant, je ne vois pas très bien ce qui peut empêcher un composant ASP.NET de fonctionner sous Mono, vu qu'a priori ça doit être purement managé et sans dépendance à un OS spécifique. Pour WinForms c'est une autre histoire, vu que ça repose lourdement sur Win32 ; ce n'est donc pas vraiment un problème de compatibilité avec Mono, mais surtout de compatibilité avec les plateformes autres que Windows. Idem pour l'impression, il doit y avoir du code spécifique à l'OS.

  13. #13
    Expert éminent
    Citation Envoyé par tomlev Voir le message
    Pour ASP.NET c'est surprenant, je ne vois pas très bien ce qui peut empêcher un composant ASP.NET de fonctionner sous Mono, vu qu'a priori ça doit être purement managé et sans dépendance à un OS spécifique. Pour WinForms c'est une autre histoire, vu que ça repose lourdement sur Win32 ; ce n'est donc pas vraiment un problème de compatibilité avec Mono, mais surtout de compatibilité avec les plateformes autres que Windows. Idem pour l'impression, il doit y avoir du code spécifique à l'OS.
    Je me rappelle pas tous les détails, mais il y avait de ces 2 choses :
    La version du runtime utilisée par ces suites était pas prise en charge par mono à ce moment-là (il fallait se contenter de 2.0 qui était déjà de l'arrière garde), plus le projet de support d'ASP.net sous mono qui était pas franchement pas très au point et peu maintenu, dont le futur devenait très incertain après la perte du sponsoring de Novell. A son arrivée, Xamarin avait communiqué officiellement qu'elle se concentrerait sur ses produits commerciaux pour mobile (Mono Touch / Mono Droid) sans clarifier l'avenir du projet Asp.net.
    Vraiment rien qui ne fasse envie d'investir dans du mono pour de l'asp.net, clairement. Même si dans le forum de telerik, on voyait des gens qui réussissaient tant bien que mal à utiliser les composants des anciennes versions sous mono avec des bugs à tout bout de champ (grid/datasets avec pagers qui fonctionnaient pas correctement etc...). Assez pour me couper l'envie personnellement.

  14. #14
    Membre habitué
    Citation Envoyé par tomlev Voir le message
    Les produits open-source dont il est question sont gratuits (les compilateurs C# et VB.NET font partie du .NET SDK, qui a toujours été gratuit). Ce qui est payant, c'est l'IDE Visual Studio, et il n'est pas open-source.
    Entièrement d'accord avec toi, en théorie les 2 sont bien séparé. Mais en est il de même en pratique? Je vois mal qui utiliserait Roslyn sans VS.

    Mais avec ce que nous dit Sirus64 et l'info que tu as trouvé sur zdnet, on commence a y voir plus clair ^^.

  15. #15
    Rédacteur/Modérateur

    Citation Envoyé par Heptaeon Voir le message
    Entièrement d'accord avec toi, en théorie les 2 sont bien séparé. Mais en est il de même en pratique? Je vois mal qui utiliserait Roslyn sans VS.
    Ca dépend de quel aspect de Roslyn tu parles.

    Le compilateur lui-même pourra a priori être utilisé sur n'importe quelle plateforme (apparemment il fonctionne déjà sans problème sous Linux). En pratique, on utilise généralement un IDE, mais ça peut arriver de compiler des programmes en ligne de commande (par exemple sur un serveur de build, tu installes le SDK, mais généralement pas Visual Studio). Et rien n'empêche d'autres IDE que Visual Studio (par exemple MonoDevelop, SharpDevelop, ou même LinqPad pour autant qu'on puisse appeler ça un IDE) d'utiliser le compilateur fourni avec le SDK.

    Pour l'aspect "Compiler as a service", ça peut être utile dans n'importe quel IDE qui veut fournir des fonctionnalités d'analyse de code, de refactoring, etc. Plus besoin de réimplémenter un parser pour le langage, puisqu'on peut utiliser celui du compilateur.

###raw>template_hook.ano_emploi###