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

Langages de programmation Discussion :

Quel concept pour créer une application multi-lingues ?


Sujet :

Langages de programmation

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Points : 79
    Points
    79
    Par défaut Quel concept pour créer une application multi-lingues ?
    Bonjour a tous.
    Je poste dans ce forum, mais je ne sais si mon post a vraiment ca place ici.

    Je me pose une question de conception:

    comment mettre en place de facilement une fonction pour changer la langue (anglais francais) dans un programme.
    Je m'explique :
    j'ai fait un programme en anglais, maintenant j'aimerais en faire un version en francais, et je ne veux pas de sources différentes pour chaque langue.
    J'ai pensé avoir un fichier texte par langue dans lequel j'ai les textes que j'utilise dans mon programme

    genre;
    fichier anglais :
    #1#exit
    #2#start
    #3#.....

    fichier francais :
    #1#sortie
    #2#debut
    ....

    et dans mon programme j'appelle le numéro qu'il me faut.
    Ca me parait un lourd a mettre en place, vue la quantité de texte dans mon programme.

    Est ce une bonne facon de faire?
    Y en a t il d'autre ?
    Avez-vous des exemples ?

    merci pour vous réponses

    a biento

  2. #2
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    Pour des applications Web en java, il a des fichiers "properties" qui permet de développer des applications indépendamments d'une langue.

    L'application va contenir différent fichier de langue. Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    ##erreur
    error.aucunprogramme = Il n'existe pas de tel programme
    
    nombibliotheque.label = Nom de la bibliothèque
    nomprogrammemainframe.label = Nom du programme
    datecreation.label = Date de création
    datemiseajour.label = Date de mise à jour
    Dans la page Web, on appel le label avec une instruction du type :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <bean:message key="nomprogrammemainframe.label"/>

    Qui ne va que remplacer par "Nom du programme" (et qui peut être différent suivant le navigateur internet de la personne)

    Ce principe est transposable pour d'autres applications.
    Je ne répondrai à aucune question technique en privé

  3. #3
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    Le principe est correct : un id et le texte..

    Moi ce que je fais c'est un seul fichier, mais multilingue :

    Exemple :

    Messages.txt

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Languages : français, english
    
    Label_bouton_1 : {
            "Poussez",
            "Push"
    }
    
    ....
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Points : 79
    Points
    79
    Par défaut
    merci pour vos réponses.
    Mon application est en java, et vue le temps que dont je dispose pour passer mon appli en Francais, je vais opter pour ta méthode Souviron34.
    Sinon, je suis toujours a la recherche d'exemple pour faire ca avec les fichiers.

    Encore merci a vous

  5. #5
    Membre confirmé Avatar de elbj
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Services à domicile

    Informations forums :
    Inscription : Novembre 2004
    Messages : 371
    Points : 558
    Points
    558
    Par défaut
    Bonsoir

    Pour ma part j'utilise le XML :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <root>
      <label code="nom du label">
        <langue code="default">Texte par défaut</langue>
        <langue code="fr">Texte FR</langue>
        <langue code="en">Texte EN</langue>
      </label>
      <label code="nom du label">
        <langue code="default">Texte par défaut</langue>
        <langue code="fr">Texte FR</langue>
        <langue code="en">Texte EN</langue>
      </label>
    </root>
    Lors du chargement de l'appli le fichier XML est parsé en une datatable prenant comme entrée le code du label (ligne) et la langue (colonne). En cas d'absence de donnée dans la cellule alors on prend la valeur par défaut.

    Tu peux aussi avoir un fichier XML par langue de l'appli.

    Cordialement

    Christophe B.
    Christophe B.

  6. #6
    Membre régulier Avatar de tavarlindar
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 262
    Points : 97
    Points
    97
    Par défaut
    Pour ma part, j'utilise des constantes.
    je n'utilise pas java, mais php+mysql.

    Mes applications destinée aux clients ( sites webs) sont programmées avec des CONSTANTES. au chargement de chaque page, en fonction de la langue je remplace la constante par sa traduction. (fichier externe de correspondance)
    Mieux vaut penser avant d'agir que d'agir en rêvant.

  7. #7
    Membre expert
    Avatar de hed62
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    2 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 029
    Points : 3 134
    Points
    3 134
    Par défaut
    En C#, tu as aussi les fichiers de ressources (resx)
    Dans tous les cas, une table en base de données avec trois colonnes (id , langue , texte) ainsi que des méthodes d'accès automatiques (genre miniframework) peuvent résoudre le problème de la traduction.
    Hervé Delannoy, Ingénieur études&développement.

    Je n'accepte pas les demandes de mise en relation MSN/yahoo sans motif.
    ------------------------------------------------------------------------
    Si , ni , ne peuvent vous aider, mais nous oui, pensez à un pti et au !
    Merci de vous relire
    ____________________________________________________________________________________
    Recherche joueurs de "Magic" sur Lille et environs.
    Donner plutôt que jeter.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 08/07/2010, 10h40
  2. Bien créer une application multi-langues ? Unicode ou non ?
    Par Maxime Abbey dans le forum Composants VCL
    Réponses: 28
    Dernier message: 10/09/2007, 17h20
  3. Quelques conseils pour créer une application 3D
    Par mister3957 dans le forum Développement 2D, 3D et Jeux
    Réponses: 8
    Dernier message: 13/03/2006, 22h45
  4. Quel classe pour créer une barre en bas d'une JFrame
    Par daninho dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 01/02/2006, 09h30
  5. quel langage pour créer des "applications" sur 1 s
    Par jaribu dans le forum Langages de programmation
    Réponses: 7
    Dernier message: 30/07/2003, 14h06

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