Publicité
+ Répondre à la discussion Actualité déjà publiée
Affichage des résultats 1 à 8 sur 8
  1. #1
    Responsable 2D/3D/Jeux

    Avatar de LittleWhite
    Homme Profil pro Alexandre Laurent
    Ingénieur développement logiciels
    Inscrit en
    mai 2008
    Messages
    16 939
    Détails du profil
    Informations personnelles :
    Nom : Homme Alexandre Laurent
    Localisation : France

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

    Informations forums :
    Inscription : mai 2008
    Messages : 16 939
    Points : 87 754
    Points
    87 754

    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 :
    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# :
    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 :
    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 :
    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 :
    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
    La rubrique a aussi un blog !

    Ma page sur DVP
    Mon Portfolio

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

  2. #2
    Rédacteur/Modérateur



    Homme Profil pro Thomas Levesque
    Développeur .NET
    Inscrit en
    février 2004
    Messages
    19 289
    Détails du profil
    Informations personnelles :
    Nom : Homme Thomas Levesque
    Âge : 33
    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 289
    Points : 39 070
    Points
    39 070

    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
    Membre actif
    Homme Profil pro
    Inscrit en
    avril 2012
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : avril 2012
    Messages : 81
    Points : 179
    Points
    179

    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/Modérateur

    Avatar de Nathanael Marchand
    Homme Profil pro Nathanael Marchand
    Expert .Net So@t
    Inscrit en
    octobre 2008
    Messages
    3 614
    Détails du profil
    Informations personnelles :
    Nom : Homme Nathanael Marchand
    Âge : 28
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : octobre 2008
    Messages : 3 614
    Points : 8 020
    Points
    8 020

    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 chevronné

    Homme Profil pro Pierre-Emmanuel Mercier
    Ingénieur développement logiciels
    Inscrit en
    octobre 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Nom : Homme Pierre-Emmanuel Mercier
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : octobre 2006
    Messages : 70
    Points : 670
    Points
    670

    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
    Invité régulier
    Homme Profil pro
    Inscrit en
    avril 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28

    Informations forums :
    Inscription : avril 2005
    Messages : 7
    Points : 6
    Points
    6

    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/Modérateur

    Avatar de Nathanael Marchand
    Homme Profil pro Nathanael Marchand
    Expert .Net So@t
    Inscrit en
    octobre 2008
    Messages
    3 614
    Détails du profil
    Informations personnelles :
    Nom : Homme Nathanael Marchand
    Âge : 28
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : octobre 2008
    Messages : 3 614
    Points : 8 020
    Points
    8 020

    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 yannick inizan
    développeur Vala
    Inscrit en
    février 2011
    Messages
    481
    Détails du profil
    Informations personnelles :
    Nom : Homme yannick inizan
    Âge : 27
    Localisation : France, Cher (Centre)

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

    Informations forums :
    Inscription : février 2011
    Messages : 481
    Points : 3 659
    Points
    3 659

    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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •