IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

Dotnet Discussion :

La troisième version majeure de Mono est disponible


Sujet :

Dotnet

  1. #1
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 858
    Points : 218 577
    Points
    218 577
    Billets dans le blog
    120
    Par défaut La troisième version majeure de Mono est disponible
    La troisième version majeure de Mono est disponible
    Support complet de C# 5.0 et de la programmation asynchrone, profil 4.5, amélioration du compilateur et des performances

    L'implémentation Open Source du framework .NET est disponible dans sa troisième version majeure et améliore le support du framework de Microsoft pour les machines UNIX, Windows, MacOS et autres.

    Compilateur C#

    Mono possède maintenant un support complet de C# 5.0 et de la programmation asynchrone.

    Le compilateur a finalisé sa migration du générateur de code afin de pleinement utiliser l'API IKVM.Reflection. Cette fonctionnalité avait été commencée dans Mono 2.10 et est maintenant disponible par défaut. Avec cette fonctionnalité, les développeurs vont pouvoir utiliser mscorlib comme ils le souhaitent sans devoir recompiler un compilateur personnalisé. De plus, les exécutables multiples pour le compilateur ont été éliminés et l'unification dans un même compilateur diminue les temps de compilation.

    Evaluation peut maintenant compiler des types

    L'API Evaluator.Eval() n'est plus limité aux expressions et appels de fonctions : vous pouvez passer des namespaces, classes, interfaces et définitions de structures en tant que chaine de caractères et avoir un résultat compilé.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    csharp> class X { public int a; }
    csharp> var t = new X () { a = 1 };
    csharp> print (t.a);
    1
    csharp>
    API Interface

    Le compilateur exposé par la bibliothèque Mono.CSharp n'est plus limité à être un compilateur global. Maintenant vous pouvez instancier plusieurs blocs ayant chacun ses variables globales et types.
    L'exemple suivant assigne une chaîne de caractères dans un contexte et un entier dans un second :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    using System;
    using Mono.CSharp;
     
    class MyWorld {
           public Evaluator Evaluator;
     
           public MyWorld (string [] args)
           {
                   var r = new Report (new ConsoleReportPrinter ());
                   var cmd = new CommandLineParser (r);
     
                   var settings = cmd.ParseArguments (args);
                   if (settings == null || r.Errors > 0)
                           Environment.Exit (1);
     
                   Evaluator = new Evaluator (settings, r);
           }
    }
     
    class X {
           static int Main (string [] args)
           {
                   var first = new MyWorld (args);
                   var second = new MyWorld (args);
     
                   first.Evaluator.Run ("var Demo = \"hello, world\";");
                   second.Evaluator.Run ("var Demo = 1;");
                   first.Evaluator.Run ("print (Demo);");
                   second.Evaluator.Run ("print (Demo);");
                   return 0;
           }
    }

    Shell C# Interactif

    Une nouvelle fonction d'affichage peut être utilisée à la place de Console.WriteLine(). De plus, le shell interactif utilise maintenant une syntaxe succincte qui ne nécessite plus de ';' à la fin des expressions :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    csharp> 1 + 2
    3
    csharp>
    Profil 4.5

    Le profil 4.5 est un sous ensemble strict du profil 4.0 et est maintenant celui par défaut.
    Comme le profil 4.5 est un sous ensemble du 4.0, ils partagent le même numéro d'assembly donc la bibliothèque 4.5 est actuellement installée dans le GAC. Les changements de ce nouveau profil incluent :
    • des nouvelles méthodes asynchrones ;
    • une API de compatibilité WinRT ;
    • de nouvelles assemblies (System.Net.Http, System.Threading.Tasks.Dataflow)


    Optimisations à l'exécution

    De multiples optimisations à l'exécution ont été rajoutées :
    • une nouvelle implémentation rapide de ThreadLocal<T>
    • optimisations de List<T>
    • support de nouveaux attributs pour forcer inlining
    • support d'une table complète de caractères de substitution Unicode
    • nouveau profiler pouvant être utilisé avec VTune Amplifier Profiler d'Intel
    • support des événements System.Net.NetworkInformation.NetworkChanged pour Linux



    Installation de Mono 3

    Des paquets précompilés pour de multiples systèmes (Linux, Solaris, MacOS X et Windows) et les sources peuvent être trouvés dans la section des téléchargements du projet.

    L'installation à partir des sources est simple :

    Pour la compilation de libgdiplus pour le support de System.Drawing :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $ tar xzf libgdiplus-3.0.tar.gz
    $ cd libgdiplus-3.0
    $ ./configure
    $ make
    $ make install
    et pour compiler Mono :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $ tar xzf mono-3.0.tar.gz
    $ cd mono-3.0
    $ ./configure
    $ make
    $ make install

    Votre opinion sur Mono 3 :
    Avez-vous mis à jour votre système ? Si non, allez-vous le faire prochainement ?
    Pensez-vous que le projet possède du retard sur l'implémentation de Microsoft ?


    Source :

    http://www.mono-project.com/Release_Notes_Mono_3.0
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Chapeau à l'équipe Mono qui fait un boulot assez exceptionnel

    Ils arrivent toujours à suivre de très près les sorties de C# et .NET, et dans le cas de C# 5 ça n'a pas dû être facile (le support du code asynchrone avec async/await implique des réécritures de code assez complexes, pour extraire le code qui suit await en tant que continuation de l'appel asynchrone).

    Pour ma part je n'utiliserai probablement pas Mono 3 vu que je ne développe que sous Windows, mais c'est cool de savoir que je pourrai retrouver un environnement familier si j'ai besoin de développer sur une autre plateforme.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Ce projet a le vent en poupe et il peut se montrer une solution très intéressante dans le cadre d'un développement multi-plateformes.

  4. #4
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Points : 8 080
    Points
    8 080
    Par défaut
    Il est à noter, qu'avec l'ouverture de ASP.NET en Open Source, ils ont pu reprendre pas mal de choses pour proposer du MVC4 et Entity Framework notamment !

  5. #5
    Membre éclairé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 70
    Points : 681
    Points
    681
    Par défaut
    C# 5.0 juste avant EF5, nous pouvons dire que les développeurs voulant se tourner vers mono pour être multiplateforme sont gâtés en cette fin d'année.

    Merci à l'équipe de Mono

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38

    Informations forums :
    Inscription : Avril 2005
    Messages : 10
    Points : 31
    Points
    31
    Par défaut Quid de MVC3 et Entity Framework dans le monde réel ?
    La question que je me pose désormais est : est-ce que mono+apache ou autre devient une alternative intéressante à .NET/IIS ?

    En clair, est-ce que l'on pourra, dans un futur proche faire tourner des applications MVC/EntityFramework dans un environnement LAMP ?
    Avec des performances équivalentes ?
    Sans s'arracher les cheveux ?

  7. #7
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Points : 8 080
    Points
    8 080
    Par défaut
    Citation Envoyé par eka808 Voir le message
    La question que je me pose désormais est : est-ce que mono+apache ou autre devient une alternative intéressante à .NET/IIS ?

    En clair, est-ce que l'on pourra, dans un futur proche faire tourner des applications MVC/EntityFramework dans un environnement LAMP ?
    Avec des performances équivalentes ?
    Sans s'arracher les cheveux ?
    MVC tu peux déjà (la version 4) pour ce qui est de EF, bien que ca soit dispo, je suis pas sur que les connecteurs ADO.Net compatibles existent (ou peut être pas vers SQL Server).

  8. #8
    Inactif  

    Homme Profil pro
    développeur Vala
    Inscrit en
    Février 2011
    Messages
    478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : développeur Vala
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2011
    Messages : 478
    Points : 3 700
    Points
    3 700
    Par défaut
    et où télécharge-t-on la dernière version de la lib gdi+ ?
    Edit : j'ai tenté maintes fois d'empaqueter mono, sans succès
    (marquer un post résolu si vous êtes satisfait de la réponse )
    ma page launchpad https://launchpad.net/~inizan-yannick
    ma page github : https://github.com/inizan-yannick

Discussions similaires

  1. Réponses: 0
    Dernier message: 16/06/2015, 08h01
  2. Une nouvelle version de MariaDB Entreprise est disponible
    Par Olivier Famien dans le forum Actualités
    Réponses: 2
    Dernier message: 14/04/2015, 10h48
  3. Réponses: 0
    Dernier message: 08/05/2014, 18h46
  4. La troisième version de gNewSense est maintenant disponible
    Par gentil2005 dans le forum Distributions
    Réponses: 0
    Dernier message: 06/09/2013, 10h21
  5. Réponses: 13
    Dernier message: 06/11/2008, 01h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo