Posté par tene .
En réponse à la dépêche Mono 0.24.
Évalué à 3.
Si je te suis bien, le manque d'ouverture du code par MS indique qu'ils n'ont pas pensé leur truc en termes de portabilité.
Non je n'ai pas voulu faire un tel lien entre les deux (parce que source ne veut pas dire portable... spec non plus d'ailleurs, mais c'est souvent plus simple avec...).
Quand je parle de ne pas vouloir en faire un truc portable, je pars de mon expérience personnelle (je suis en train de tester C#/.NET sous windows): MSDN (la doc http://msdn.microsoft.com(...)) parle très peu de portabilité, rotor contient peu de code (ce qui empêche d'affirmer que .NET est portable, ça ne veut pas dire que c'est impossible!), mais surout, en regardant la série de classe de .NET. Un programmer Win32 s'y retrouve très vite parce qu'il y retrouve un gout de Win32, plus dans certaines parties que dans d'autre:
- les thread sont géré "à la windows", c'est d'ailleurs un gros problème que mono a rencontré, ce n'est pas apparent, mais ça a du être chaud! (ainsi que tous les objets systèmes).
- winforms est mappé sur Win32, boucle de message, owner draw, style, etc... on y retrouve tout, alors que X utilise un modèle relativement différent!
- tous le remoting est basé sur COM+.
- ...
Ca permet à .NET d'être plus "rapide" que java, ils ne sont pas parti des mêms bases et avec les mêms contraintes: ms a pris le plus petit dénominateur commun de ses propres OS (et encore en droppant Windows 95) par contre il a voulu conservé l'existant et supporté plusieurs langages, Sun a du jouer avec son OS ainsi que tous les autres mais a pu se concentrer sur un seul nouveau langage... je crois que .NET est bien pour un programmeur Win32 et que Java reste l'une des seules solutions pour faire un truc portable... si .NET existe sous linux, même sans être 100% portable (ceci dit, rien n'est 100% portable, même en java, il faut programmer "correctement" si on veut de la portabilité, et certaines choses posent toujours des prob...) il peut amha offrir une nouvelle façon de programmer au développeur linux (certains aimeront, d'autre pas, ça donne plus de choix!).
[^] # Re: Mono 0.24
Posté par tene . En réponse à la dépêche Mono 0.24. Évalué à 3.
Non je n'ai pas voulu faire un tel lien entre les deux (parce que source ne veut pas dire portable... spec non plus d'ailleurs, mais c'est souvent plus simple avec...).
Quand je parle de ne pas vouloir en faire un truc portable, je pars de mon expérience personnelle (je suis en train de tester C#/.NET sous windows): MSDN (la doc http://msdn.microsoft.com(...)) parle très peu de portabilité, rotor contient peu de code (ce qui empêche d'affirmer que .NET est portable, ça ne veut pas dire que c'est impossible!), mais surout, en regardant la série de classe de .NET. Un programmer Win32 s'y retrouve très vite parce qu'il y retrouve un gout de Win32, plus dans certaines parties que dans d'autre:
- les thread sont géré "à la windows", c'est d'ailleurs un gros problème que mono a rencontré, ce n'est pas apparent, mais ça a du être chaud! (ainsi que tous les objets systèmes).
- winforms est mappé sur Win32, boucle de message, owner draw, style, etc... on y retrouve tout, alors que X utilise un modèle relativement différent!
- tous le remoting est basé sur COM+.
- ...
Ca permet à .NET d'être plus "rapide" que java, ils ne sont pas parti des mêms bases et avec les mêms contraintes: ms a pris le plus petit dénominateur commun de ses propres OS (et encore en droppant Windows 95) par contre il a voulu conservé l'existant et supporté plusieurs langages, Sun a du jouer avec son OS ainsi que tous les autres mais a pu se concentrer sur un seul nouveau langage... je crois que .NET est bien pour un programmeur Win32 et que Java reste l'une des seules solutions pour faire un truc portable... si .NET existe sous linux, même sans être 100% portable (ceci dit, rien n'est 100% portable, même en java, il faut programmer "correctement" si on veut de la portabilité, et certaines choses posent toujours des prob...) il peut amha offrir une nouvelle façon de programmer au développeur linux (certains aimeront, d'autre pas, ça donne plus de choix!).