• [^] # Re: C# et le libre...

    Posté par . En réponse à la dépêche talweg, une migration vers Mono. Évalué à 10.

    .NET a été pensé pour faire du multi-langage, ce qui est une différence fondamentale avec la JVM de Sun.

    Mouais, le multi langage c'est quand même une grosse blague. Ok, on peut utiliser d'autres langages que C# sur .NET mais à condition de revoir complètement son code. C'est surtout un argument commercial pour inciter les boites qui ont des softs écrits dans d'autres langages à switcher. Au final 80% des dévelopeurs .NET codent en C#, les 20% restant sont des dévelopeurs VB qui ont migré. Les autres langages sont négligeables. Quel est l'intérêt de faire du Python en .NET par exemple ? Les perfs ? Oups, pas vraiment. Le framework ? Ah, oui, il faut tout recoder parce qu'on peut utiliser les classes du framework .NET mais pas celles du framework Python. On peut coder avec les syntaxe Python des programmes Python qui ne tourneront que sur .NET. Un peu strange, non ?

    Les mécanismes d'interfaçage de bas niveau sont fondamentalement différent entre .NET et la JVM, ce qui permet à .NET de récupérer des bibliothèques existantes beaucoup plus facilement.

    Ca permet de s'interfacer avec des bibliothèques natives donc adieu la portabilité, mais ça c'est un peu le but de Microsoft. Une bonne partie du framework ne fait que fournir un wrapper autour des libs de Windows. Il est possible de réimplémenter à partir de rien l'équalent dans Mono mais qui peut garantir que le comportement sera rigoureusement identique ? D'autant que seule une petite partie de framework est standardisée. .NET a surtout été pensé pour offrir un gain de productivité aux dévelopeurs Windows. Ca ne va pas plus loin.