C'est quoi ?
Une plateforme de dev pour Linux qui partage le même socle technique que le framework .NET sous Windows.
Quoi de neuf ?
Un nouveau moteur JIT (traduction en code natif à la volée), basé sur une représentation linéaire du code intermédiaire (aka IL ou bytecode) plutôt que sous la forme d'arbre.
http://www.mono-project.com/Linear_IL
Cool, et concrêtement ?
Permet de faire plus d'optimisation, et donc d'améliorer les perfs.
Mais encore ?
Il est maintenant possible de faire de la traduction AOT (traduction en code natif quand-je-veux) complète.
Pourquoi complète ?
Avant les méthodes génériques continuaient à être générés en JIT.
Ca sert à quoi ?
Améliore les perfs du programme exécuté lors de son démarrage (pas besoin de faire de traduction en code natif).
Peut améliorer les perfs du programme dans son ensemble... ou pas.
C'est quoi le nouveau "mperfmon" ?
Une application pour surveiller les performances d'une application mono.
Une autre nouveauté du runtime ?
On peut désormais s'attacher à un processus mono en "live" pour le déboguer ou même pour y ajouter du code.
C'est tout ?
Non y'a un dernier truc : des API pour utiliser les instructions SIMD des processeurs. En gros ca enlarge ton, enfin ca permet d'améliorer grandement les perfs d'une application qui fait du calcul intensif à base de vecteurs, comme par exemple le moteur physique d'un jeu vidéo.
Plus d'infos par là : http://tirania.org/blog/archive/2008/Nov-03.html
Ok, on passe à autre chose ? le C# par exemple ?
Rien de neuf sur le langage en soit. En revanche une nouvelle API fait son apparition : Compiler Service. Celle-ci offre la possibilité de compiler du code et de l'exécuter dynamique. Pratique pour scripter une application en C# (pour eux qui veulent pas le faire en IronPython).
On peut scripter en C# ?
Oui, d'ailleur Mono propose désormais un "Interactive Shell". Celui-ci est capable d'utiliser la nouvelle possibilité du Runtime de faire du déboggage en live.
C'est pas vraiment adapté le C# pour scripter...
Avec la syntaxe de c# 3 (notamment l'inférence de type) et la future syntaxe C# 4 (mot clé dynamic), cela prend tout son sens.
Suffit de voir à quoi ca ressemble :
http://www.mono-project.com/CsharpRepl
Oué cool, autre chose ?
Les expressions régulières vont maintenant être beaucoup plus performantes avec l'arrivée d'un compilateur dynamique dédié.
Comme en .NET donc avec l'option RegexOptions.Compiled.
Oué.
Et niveau web ?
Un bout d'ASP.NET 3.5 SP1 fait son apparition : le "Routing handler", un framework qui facilite le routage des requêtes afin d'avoir des jolies urls comme sur last.fm.
et c'est quoi ce gendarme ?
Gendarme, c'est un outil destiné à fliquer ton application avant de l'exécuter : en gros il te liste tout ce qui lui paraît louche (niveau sécurité, perf, portabilité, etc.). Pleins de nouvelles règles dans cette version.
Du neuf niveau API graphiques ?
corrections de bug essentiellement. Utilisation des contrôles natifs sous Windows.
Super on s'en tape, on est sur LinuxFR.
C'est pas faux. Mais pour ceux que ca intéresse, GTK# pour Windows passe en version 2.12.7. Et on peut même cross-compiler Mono pour Windows depuis Linux avec MinGW maintenant.
bla bla bla.
Libre adaptation de http://www.mono-project.com/Release_Notes_Mono_2.2
# Très bon
Posté par ʭ ☯ . Évalué à 6.
⚓ À g'Auch TOUTE! http://afdgauch.online.fr
# Quelle doc utiliser
Posté par mats . Évalué à 1.
tout d'abord, comme dit plus haut, super idée que cette interview. Ça rappelle la série « Head first » de chez O'Reilly.
La question que je me pose est : existe-t-il une bonne doc (ou encore mieux un bon livre) pour qui veut se mettre à mono sans être un spécialiste Java ou .NET ? Doc qui introduirait C# et surtout GTK# (et accessoirement les design pattern).
J'ai bien trouvé des livres sur C# (il y a un Head first justement) mais je n'en ai jamais vu de récent sur GTK# (il existe bien un livre sur Mono chez O'Reilly mais il est vieux).
Bye
[^] # Re: Quelle doc utiliser
Posté par TImaniac (site web personnel) . Évalué à 2.
A vrai dire, le plus simple est généralement de se référer à la doc de GTK+.
[^] # Re: Quelle doc utiliser
Posté par liberforce (site web personnel) . Évalué à 2.
http://www.mono-project.com/GtkSharp
http://www.mono-project.com/GtkSharpTutorials
# .NET c'est mieux!
Posté par alice . Évalué à -1.
[^] # Re: .NET c'est mieux!
Posté par GeneralZod . Évalué à 5.
Certes Mono n'a aucune chance sur plateforme Windows face à .Net, mais il reste un champ d'action très large pour Mono (embarqué, multiplateformes, vidéo-ludique etc)
http://www.mono-project.com/Companies_Using_Mono
[^] # Re: .NET c'est mieux!
Posté par TImaniac (site web personnel) . Évalué à 4.
[^] # Re: .NET c'est mieux!
Posté par alice . Évalué à 6.
[^] # Re: .NET c'est mieux!
Posté par Larry Cow . Évalué à 5.
Et en plus, mes yeux ont fondus et mon collègue épileptique est bien parti pour demander un arrêt de travail à durée indéterminée. Terroriste!
[^] # Re: .NET c'est mieux!
Posté par GeneralZod . Évalué à 7.
Tu as beau tourner en dérision ces jeux, mais ça contredit totalement ta théorie selon laquelle aucun "décideur pressé" ne recommenderais Mono.
# Bravo mono !
Posté par Elfir3 . Évalué à 1.
bref, est-il possible facilement de programmer une appli dont la vue du mvc serait en c#, le reste en c++, d'utiliser les winforms (ou l'équivalent... mes connaissance en librairies redmondiennes sont encore trop pauvres) sous linux, puis de retaper la popote dans un projet .net ni vu ni connu ?
Hasan sehef ?
[^] # Re: Bravo mono !
Posté par freeze . Évalué à 2.
créer un projet "MSBuild"/VS.net
coder avec la completion de code & autres goodies
Pour ça utilise monodevelop.
Pour la doc: utilise la MSDN, en web
et puis il y a des choses difficiles....
Pour les winforms, je crois que tu dois tout te taper à la main
Autre solution, tu vires les winforms, et tu utilises GTK#, pour ça monodevelop a un gui builder, et puis gtk# a un installer pour .net
[^] # Re: Bravo mono !
Posté par TImaniac (site web personnel) . Évalué à 2.
Si tu veux vraiment faire ca, le plus simple est de faire une lib qui exporte une API en C (tu peux wrapper du C++ si tu veux).
Après une fois que t'as fais ca, tu peux facilement utiliser des méthodes C en C# de manière portable.
En gros tu t'arranges pour compiler ton code C/C++ dans une lib dynamique, .so sous linux et .dll sous Windows.
Après tu lis ca :
http://www.mono-project.com/Interop_with_Native_Libraries
Pas besoin de recompiler ton code C# d'une plateforme à l'autre, une modif dans le fichier de conf et tu utilises le .so sous linux et le .dll sous Windows.
# A propos de http://www.mono-project.com/CsharpRepl ...
Posté par Christophe Chailloleau-Leclerc . Évalué à 2.
C# Shell, le premier Shell kikoolol qui supporte les "émoticones" ! Ça affiche les pubs de MSN (pardon, Live Messenger) ou pas ? :-D
[^] # Re: A propos de http://www.mono-project.com/CsharpRepl ...
Posté par Moonz . Évalué à 3.
[^] # Re: A propos de http://www.mono-project.com/CsharpRepl ...
Posté par Christophe Chailloleau-Leclerc . Évalué à 2.
Mais j'avoue que c'est pas le résultat que j'aurais attendu de cette fonction...
[^] # Re: A propos de http://www.mono-project.com/CsharpRepl ...
Posté par freeze . Évalué à 1.
Genre si on peut "s'attacher" à un soft mono et le visiter ... pourquoi pas
[^] # Re: A propos de http://www.mono-project.com/CsharpRepl ...
Posté par thedude . Évalué à 4.
Le fait d'avoir les retour des commandes systeme en tant qu'objets et non plus en tant que texte te permet de ne plus avoir a te fader des regexp imbitables et longues comme un jour sans pain.
T'as acces a bien plus d'info, dans un typage plus fort, de facon plus sure, bref, c'est enfin une evolution du shell habituel qui commence a se faire vieillot avec ses 30 ans d'age.
[^] # Re: A propos de http://www.mono-project.com/CsharpRepl ...
Posté par freeze . Évalué à 0.
Les usages ne sont pas les mêmes: d'un coté, typage absent mais concision des commandes, et de l'autre, des commandes (sans regex) longue comme mon bras pour faire un banal ls ...
[^] # Re: A propos de http://www.mono-project.com/CsharpRepl ...
Posté par thedude . Évalué à 3.
Apres, quand je vois ce genre de choses:
http://bash.cyberciti.biz/misc-shell/transfer-image-video-fr(...)
ou encore ca:
http://kb.mozillazine.org/Bash_build_script
Ben c'est typiquement le genre de trucs qui gagneraient enormement a avoir un shell haut niveau.
Encore faut il qu'il soit integre au systeme, et ca va mettre du temps ca...
[^] # Re: A propos de http://www.mono-project.com/CsharpRepl ...
Posté par TImaniac (site web personnel) . Évalué à 3.
from file in new DirectoryInfo(@"/etc").GetFiles() select file.Name;
[^] # Re: A propos de http://www.mono-project.com/CsharpRepl ...
Posté par Bapt (site web personnel) . Évalué à 0.
pfiou bah je ne suis pas prêt de quitter mon zsh
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.