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

Framework .NET Discussion :

.Net et C ou .Net sous Linux?


Sujet :

Framework .NET

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2008
    Messages : 4
    Par défaut .Net et C ou .Net sous Linux?
    Bonjour,

    J'ai une application écrite en C# (Visual 2005) dans laquelle je dois intégrer un module écrit en C. Ce module écrit en C doit être à terme porté sous Linux (d'ici 1 an ou 2)

    Quelle est la meilleure solution à votre avis? Traduire mon module en C# (qui devra pouvoir être exécuté sous Linux) ou une interface entre mon module écrit en C et l'appli en C#?

    Question subsidiaire : Mono en est aujourd'hui à l'équivalent de .Net 1.1 (quelque part entre 1.1 et 2.0 selon le site officiel). Est ce qu'on peut penser qu'il sera suffisamment avancé d'ici 1 an ou 2 pour pouvoir gérer du code compilé avec le framework 2.0?

    PS: je débute avec .Net alors s'il y a un truc que j'ai pas compris correctement merci de me remettre sur le droit chemin.

    Edit : Fautes d'orthographes

  2. #2
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Par défaut
    Bonjour

    Citation Envoyé par Ronfladonf Voir le message
    Bonjour,

    J'ai une application écrite en C# (Visual 2005) dans laquelle je dois intégrer un module écrit en C. Ce module écrit en C doit être à terme porté sous Linux (d'ici 1 an ou 2)

    Quelle est la meilleure solution à votre avis? Traduire mon module en C# (qui devra pouvoir être exécuté sous Linux) ou une interface entre mon module écrit en C et l'appli en C#?
    Traduit ton module en C#. Tu y a gagnera sans aucun doute en facilité de code et surtout en clareté.

    Citation Envoyé par Ronfladonf Voir le message
    Question subsidiaire : Mono en est aujourd'hui à l'équivalent de .Net 1.1 (quelque part entre 1.1 et 2.0 selon le site officiel). Est ce qu'on peut penser qu'il sera suffisamment avancé d'ici 1 an ou 2 pour pouvoir gérer du code compilé avec le framework 2.0?
    Mono support parfaitement les assemblies 2.0 et ça tourne nickel. Le seul point qui pose encore problème c'est les Winforms. Tout le reste ( generics, méthodes anonyme, etc, etc, etc ) fonctionne sans aucun souci.

  3. #3
    Membre émérite Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Par défaut
    Moi j'aime bien le C, alors je vais répondre l'autre possibilité. Si ton code C est écrit en C ANSI et qu'il nécessite de belle performance, maintiens le.

  4. #4
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Par défaut
    Citation Envoyé par neptune Voir le message
    Moi j'aime bien le C, alors je vais répondre l'autre possibilité. Si ton code C est écrit en C ANSI et qu'il nécessite de belle performance, maintiens le.
    Si tu veux être portable et ne pas passer 10 ans à coder un hello world alors code le en C#

  5. #5
    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 : 43
    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
    Par défaut
    C'est assez simple en C# de s'interfacer avec une DLL en C, en utilisant l'interop (voir l'attribut DllImport). Reste à voir la façon dont c'est géré par Mono pour le faire marcher sous Linux...
    Mais de toutes façons je pense qu'il vaut mieux traduire le code en C# s'il n'est pas trop gros.

  6. #6
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Reste à voir la façon dont c'est géré par Mono pour le faire marcher sous Linux...
    exactement de la même façon que sous Windows avec juste une directivement en plus dans les fichiers de conf qui permet en cas de besoin de faire un "mappage" entre une lib .dll et une autre .so afin de garder la portabilité des applications

Discussions similaires

  1. configuration du net sous linux
    Par Norouldarayni dans le forum Réseau
    Réponses: 1
    Dernier message: 09/05/2007, 17h22
  2. Faire tourner des applis .Net sous Linux
    Par PM_calou dans le forum Administration système
    Réponses: 2
    Dernier message: 29/03/2007, 11h30
  3. Peut-on utiliser une appllication .Net sous Linux ?
    Par goof_22 dans le forum Framework .NET
    Réponses: 8
    Dernier message: 18/10/2006, 11h08
  4. Problème java.net.SocketException sous linux
    Par loop4 dans le forum Linux
    Réponses: 2
    Dernier message: 27/04/2006, 15h42

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