octobre
2007
C’est grâce à un article de Scott Guthrie que nous prennons connaissance des intentions de Microsoft de rendre une grande partie du code source du Framework .NET accessiblr.
Nous pourrons donc librement regarder le fonctionnement des librairies de classes .NET de bases (System, System.IO, System.Collections, System.Configuration, System.Threading, System.Net, System.Security, System.Runtime, System.Text, etc), ASP.NET (System.Web), Windows Forms (System.Windows.Forms), ADO.NET (System.Data), XML (System.Xml), and WPF (System.Windows).
Un bon point pour les développeurs qui pourront mieux comprendre comment le Framework à été créé. Mais rendre le framework .NET Open Source va permettre un debuguage plus en profondeur, directement dans le framework lui même.
Pour plus d’information je vous propose l’article de l’origine de cette annonce :
http://weblogs.asp.net/scottgu/archive/2007/10/03/releasing-the-source-code-for-the-net-framework-libraries.aspx
Microsoft n’attaquera ps MONO, puisque MONO fait finalement partie de la stratégie MS.. sinon ils n’auraient pas normalisé et publié le CLR et C#. En ouvrant le source du framework, MS sait certainement que dans certains cas les gens de MONO s’en inspireront ou du moins que cela les aidera d’une façon ou d’une autre.
Je ne pense pas que MS soit aujourd’hui dans une stratégie conservatrice. Ils savent très bien que pour imposer .NET et Vista (les OS représentent leur plus gros C.A. ne l’oublions pas) il faut en passer par des outils de dev sexy et ouverts.
En même temps toutes les supputations sont possibles, néanmoins je vois mal Microsoft attaquer Mono alors que cela ouvre (un peu) sa plate-forme Dotnet au monde Linux.
Ce serait un peu comme se tirer une balle dans le pied!
yep j’apporte mes 2 centimes
http://www.vnunet.fr/fr/news/2007/08/22/open-source-google-s-prend
adios
SR
L’amende de Bruxelles concerne principalement la fourniture de Windows Media Player avec Windows ainsi l’ouverture du code de Windows lui-même pour aider les concurrents. Rien à voir avec .NET dont l’ensemble fait déjà l’objet de normes ouvertes et publiées…
Il ne faut pas raconter n’importe quoi.
Quant à bruxelles, je préfèrerais qu’ils s’occupent de nos escrocs locaux et bien européens, de nos délits d’initiés, de nos « grands » dirigeants et leur parachuttes dorés, etc. On a tellement de ménage à faire chez nous avant de donner des « amendes » et faire la leçon aux autres non ?
Pour en revenir aux sources du framework, on pourrait dire que l’idée date de la VCL de Delphi (ça fait environ 13 ans) donc rien de neuf. Mais c’est bien que MS décide de publier le code. C’est un geste d’ouverture supplémentaire. Depuis le début de .NET MS a fait de gros efforts et celui-là en est un de plus. Rien d’exceptionnel en soi, mais important quand on l’inscrit dans une continuité d’événements.
Beaucoup de spéculation sur cette nouvelle mais la réalité est plus prosaique et soit vous avez la mémoire courte soit vous n’êtes pas au courant de l’actualité:le géant du logiciel s’est fait infliger une amende par Bruxelles ce qui explique cette ouverture..
@P-E Dautreppe : Il y a peut-etre 5 façons d’écrire un singleton mais pas dizaine de faire une boucle for
Dans tout les cas c’est à la fois une bonne nouvelle dans le sens ou effectivement certaine partie du framework seront mieux comprisent par les équipe de dev de Mono (A quoi sert telle classe, comme deux classes sont relié entre elle, comment le compilateur génére tel chose, etc, etc) mais également un grand danger dans le sens ou il va faloir que les équipes de dev vérifie avec encore plus d’attention que les contribs ne viennent directement du Fx de MS, ce qui potentiellement pourrait avoir un impact catastrophique sur le projet.
Pour tout ce qui portage de VS (que ça soit les éditions express ou non) je pense pas, mais alors pas du tout que ça soit possible. Pk ? Tout simplement à cause du nombre de PInvoke contenu dans l’EDI et ses libs
@dev01 :
J’ai parcouru qq fichiers au hasard et effectivement je ne suis pas retombé là dessus. Donc soit j’avais rêvé à l’époque (ça remonte à plus d’un an, tout à fait possible), soit les fichiers ont été modifiés. Donc je retire ce que j’ai dit !
@Neo51 : Merci pour l’info !
@dev01 :
Je vais essayer de te retrouver les exemples que j’avais vu. Mais il est effectivement possible qu’ils aient été supprimés depuis.
Cependant, je connais au moins 5 façons d’écrire un singleton (classe qui ne dépasse pas 10 lignes) alors une classe plus longue, je pense qu’il y a effctivement pas mal de façons différentes de le faire
On peut me dire grossomodo ce que dit miguel a ce sujet, (désolé je comprends que l’anglais technique sur la programmation aprés c’est trop dur…), svp ca serait trés gentil.
@Pierre-Emmanuel Dautreppe :
Pour réagir à Lunatix, tout en trouvant le portage de Mono très important, je le trouve souvent très limite. Est-ce vraiment normal de trouver dans les sources de Mono le code de MS (sorti via le reflector) avec un gros header par dessus « Written by ‘Mono' » ?
Il y a pas mal de fichiers qui sont des gros copiés / collés des sources extraits du reflector.
Euh … tu es sur de ta betise la ? il y a un gros travail des équipes Mono pour que ce genre de chose n’arrive et tout les code/patch qui sont identifiés comme étant du copié/collé sont systématiquement réécrit. Après qu’il y ai des ressemblances c’est normale, il n’y as pas 3000 façons d’écrire une classe générique comme List
Miguel de Icaza (qui est le chef de projet de mono) ne semble pas du même avis : sans blague
http://fr.wikipedia.org/wiki/Mono_(logiciel)#Accord_entre_Novell_et_Microsoft
Microsoft et novell on trouvé un accors car :
-novell ne pouvoit pas continuer à travailler avec des pro en étant sous la menace de microsoft concernant certains bervets.
-microsoft ne pouvait pas directement porter .NET sous linux hors ils en avaient besoin pour silverlight (qui à pour but de contrer adobe et flex ou flash). Miguel de Icaza (qui est le chef de projet de mono) : http://tirania.org/blog/archive/2006/Nov-04.html ne semble pas du même avis que la « blogosphère » de lunatix :o)
Pour réagir à Lunatix, tout en trouvant le portage de Mono très important, je le trouve souvent très limite. Est-ce vraiment normal de trouver dans les sources de Mono le code de MS (sorti via le reflector) avec un gros header par dessus « Written by ‘Mono' » ?
Il y a pas mal de fichiers qui sont des gros copiés / collés des sources extraits du reflector.
Neo, tu parles d’accords entre Novell et MS ? ça m’intéresse. Tu as une source, un lien qui en parle ?
Merci !
Pour tout le monde : je pense que la demande de MS de standardisation de .NET par l’ECMA était un pied de nez à Sun qui avait tenté la même chose avec Java mais était revenu en arrière.
Et j’ai plutôt l’impression que toutes leurs actions continuent dans ce sens, comme une concurrence Sun / Microsoft.
la « blogosphere » pense quand même plus comme moi
http://www.eweek.com/article2/0,1895,2191754,00.asp
http://blogs.the451group.com/opensource/2007/10/04/microsofts-restricted-share-poses-problems-for-mono/
on peut trouver plein d’exemples…
non mono il s’en fichent ils bossent déjà avec microsoft, je vous rappelle que mono est trés lié à novell qui a signé des accords avec MS il y a peu.
ça va surtout faciliter le travail des développeurs qui vont pouvoir voir concrètement comment microsoft implémente telle ou telle interface et mieux comprendre les mécanimes internes du framework.
oualala, non, pas du tout. pour mono ca va leur compliquer la vie ! ils vont devoir checker a chaque contribution que c’est pas du code copié/collé du code de .net version microsoft, car la licence ne le permet pas. un gros boulot ! surtout que la personne qui fait ca, ne peut plus coder pour mono…
(sans parler du fait que un bon procès a la SCO pourrait bien etre possible d’ici quelques années)
Salut, je viens lire cette news (effectivement ce n’est pas de l’opensource) et je suis quand même surpris que personne n’a souligné que le bénéficiaire c’est mono, non?
Je pense que ça va bien les aidés pour les technologies comme ado.net ou wpf ….
Hum, pour firefox c’est quand même tout mono qui fait…même si il est vrai que moolight sera la version officiel de silverlight pour linux ce qui n’est pas négligeable.
Les versions express de visual studio sont gratuites, car il existe des variantes performantes (shardevellop) libre, c’est ne donc pas par volonté d’ouverture qu’il font des versions non-payantes.
Hello tout le monde !
Effectivement, on ne peut pas parler d’Open Source et Loïc a bien fait de corriger.
Je voudrais quand même ajouter qu’il est vrai que l’on pouvait déjà visualiser les sources auparavant avec le réflector, mais pour moi la démarche est complètement différente. Le Réflector n’est pas Microsoft. Oui Lutz Roeder a depuis été récupéré dans les teams Microsoft (Blend entre autres), mais que ça n’était pas le cas depuis le début me semble-t-il.
Je vois donc cette ouverture comme une réelle volonté de transparence de Microsoft et de continuer à rendre .NET « public ». Après la standardisation par l’ECMA qui était un premier grand pas dans ce sens (n’oublions pas que tout le monde a le droit de créer son propre CLR, le « concept » étant public, d’où MONO d’ailleurs), maintenant ils publient les sources
Quand on voit à côté les ouvertures à Linux, ajouter du support Firefox (WebTest, Silverlight), Versions Express (et donc gratuites) de l’IDE…
Je ne sais pas ce que vous en pensez, mais toutes ces ouvertures me plaisent assez.
Salut à tous,
Je viens de voir vos remarques concernant l’expression « Open Source » mal utilisée dans ce cas ci.
C’est à présent corrigé
neo.51 : Je veux juste dire que c’est très différent de l’OpenSource…
Avec un accès en lecture au code source (comme c’est le cas ici, et comme c’était le cas pour Java avant la GPLv2), on peut avoir une meilleure vision sur les mécanismes mis en place par telle ou telle classe et c’est très intéressant (je ne remet pas du tout ca en cause), mais cela ne permet pas de porter le runtime sur une autre plateforme ou de diffuser des versions patchés proposant de nouvelles fonctionnalités (c’est de plus en plus courant dans les conversations sur Java 7).
a++
… où pas
Mais c’est un autre débat, microsoft ne met pas le framework .NET open source et ne publie pas plus de code qu’avant. Ils fournissent juste un outil intégré pour …
D’ailleur en .NET y a tout ce qu’il faut pour se le développer le plugin, avec la réflexion et code dom…
Juste pour info : ça fait quand même un paquet d’année que c’est comme cela pour Java, bien avant qu’il ne passe réellement en OpenSource…
Bien que l’accès en lecture au code source soit un avantage indéniable, on est loin de ce que pourrait apporter l’OpenSource…
a++
Même si conceptuellement et marketingement ça montre une envie d’ouverture, si on reste sur un plan purement technique c’est un add-on type reflector intégré à VS ;o)
Cela semble une petite révolution, mais comme dit + haut, c’est qd meme loin de l’Open-Source.
Le .NET sera fourni avec la MS-RL:
« Microsoft Reference License (Ms-RL) – The Ms-RL is a reference-only license that allows licensees to view source code in order to gain a deeper understanding of the inner workings of a given technology. It does not allow for modification or redistribution. Microsoft uses this license primarily for technologies such as its development libraries. »
Source: http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx
donc en effet, lecture seule donc ~= reflector. Le gros + est l’intégration dans VisualStudio (un argument de + pour VS2008, vive le marketing?)
ouais disons que le terme OpenSource n’est effectivement pas adapté mais c’est quand même sympas.
Sinon c’est surtout pour le debuggage parce que voir comment ça fonctionne … ben il suffit d’utiliser reflector
c’est pas vraiment de l’open source ça
http://fr.wikipedia.org/wiki/Open_source