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

Linux Discussion :

C ou Java


Sujet :

Linux

  1. #1
    Membre actif Avatar de gibet_b
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 292
    Points : 296
    Points
    296
    Par défaut C ou Java
    Salut à tous,

    J'ai dans la tête de développer un logiciel de bridge. Dans un premier temps, juste un soft d'aide à l'enchère, le jeu de la carte viendra par la suite.

    Etant donné que j'aimerai qu'il soit multi-plateforme (win et linux) car sous linux, impossible de trouver un jeu de bridge, je me suis posé la question du langage : C ou Java ?

    Java, j'ai appris ce langage il y a pas longtemps, j'avoue que j'aime assez... L'implementation des threads est assez simple. L'inconvénient c'est le deploiement... Je ne voudrais pas obliger l'utilisateur à installer une JVM avant ; afin de faliciter la démarche de celui-ci. Car les bridgeurs ne sont pas toujours tres à l'aise avec l'outil informatique.

    C, je l'ai appris il y a deux ans, je n'en fais pas bcp ces derniers temps mais je devrais réussir à m'y remettre sans trop de difficultés. L'avantage du C, c'est pour le déploiement. Son inconvénient, c'est les threads... D'ailleurs, est ce que les pthreads fonctionne aussi sous windows ? Quels systemes d'implementation des threads existe sur les deux plateformes ?

    J'ai pensé à, pourJava, utiliser un outil freeware qui crée des exe a partir d'une appli java. Mais cette appli freeware n'est compatible que windows (a moins que vous connaissiez l'équivalent linux) donc ca veut dire que je pars du principe que le linuxien est déjà un informaticien et qu'il saura comment installer une jvm...

    Voilà, j'aimerai avoir votre avis...

    Merci d'avance,

  2. #2
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 282
    Points : 11 036
    Points
    11 036
    Par défaut
    Il existe quantité de bibliothèques portables pour le C ou le C++. Seulm problème, il te faudra compiler pour chaque plateforme.

    Mais as-tu besoin des threads ?

  3. #3
    Membre actif Avatar de gibet_b
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 292
    Points : 296
    Points
    296
    Par défaut
    Ben je pensais légérement multithreader le programme pour les phases de calcul pour le jeu de la carte... Histoire de gagner un peu de temps lors du calcul des différentes solutions par exemple. Même si peu de machine sont multithread pour l'instant, cela risque de venir avec le temps.

  4. #4
    Expert confirmé
    Avatar de Katyucha
    Femme Profil pro
    DevUxSecScrumOps Full Stack Bullshit
    Inscrit en
    Mars 2004
    Messages
    3 287
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Irlande

    Informations professionnelles :
    Activité : DevUxSecScrumOps Full Stack Bullshit

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 287
    Points : 5 075
    Points
    5 075
    Par défaut
    Sans parler que c'est un bon exercice

    Vu que je developpe plus sous java que sur C, mon point de vue risque d'être partial.

    Mais je me demande :
    Pourquoi ne pas le faire dans les deux langages? Ainsi tu pourras toi même te rendre compte des avantages/inconvénients de chacun! Très bon excercice non?

  5. #5
    Membre actif Avatar de gibet_b
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 292
    Points : 296
    Points
    296
    Par défaut
    Sur que c'est un bon exercice !

    Cependant, je n'ai pas le temps de tout faire, et le développement d'un logiciel de bridge est assez complexe. J'aurai l'impression de perdre mon temps à développer dans deux langages différents alors que je pourrai utiliser ce temps à améliorer les performances d'un seul.

    Comment déploies-tu tes applications java ?

  6. #6
    Expert confirmé
    Avatar de Katyucha
    Femme Profil pro
    DevUxSecScrumOps Full Stack Bullshit
    Inscrit en
    Mars 2004
    Messages
    3 287
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Irlande

    Informations professionnelles :
    Activité : DevUxSecScrumOps Full Stack Bullshit

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 287
    Points : 5 075
    Points
    5 075
    Par défaut
    Pour l'instant, les applis javas sont déployés surtout sur quelques postes. Mais je pense qu'au prochain changement de matériel, je demanderai au personne du service technique de mettre par défaut, la J2RE 1.5 pour être pénard.
    Les applis sont stockés sur un serveur commun de fichiers, et il suffit alors d'envoyer un petit .bat pour lancer l'appli ...

    Java a un avantage, il existe énormément de classe graphique. C'est de l'Ikéa... T'as les pièces, suffit de les monter. Pas besoin de les refaire.

  7. #7
    Membre actif Avatar de gibet_b
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 292
    Points : 296
    Points
    296
    Par défaut
    Vi quand c'est en entreprise, c'est pas tres grave mais quand c pour l'utilisateur lambda, c'est plus compliqué...

    Sinon c'est vrai que j'aime beaucoup Java, apparemment dans ma promo je suis presque le seul lol

  8. #8
    Membre chevronné

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 296
    Points : 1 803
    Points
    1 803
    Par défaut
    Il existe bien evidemment des librairies pour le multithread en C ou C++ y compris portable.
    la machine java sur les distributions linux tant à devenir un standart, l'installation sous windows (quand elle n 'y est pas) reste trés simple donc le problème et plus un choix technique personnel.
    Java dispose apperemment des API pour le designe graphique qui te permettrons un developpement plus simple, le "dessin" sous C ou C++ restant plus complexe en contrpartie tu réalise exactement ce que tu desires ......

  9. #9
    Membre actif Avatar de gibet_b
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 292
    Points : 296
    Points
    296
    Par défaut
    Oui mais outre le pb de l'installation de la JVM, il y a son téléchargement, qui n'est pas très léger il me semble...

  10. #10
    Membre habitué Avatar de tony montana
    Profil pro
    Inscrit en
    Février 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 114
    Points : 136
    Points
    136
    Par défaut
    salut,
    le JRE java est assez léger pour windows : 1,4Mo pour le jre 1.4.2
    pour linux par contre 13Mo...

    ensuite pour le déploiement d'applications, tu peux faire un jar exécutable (qui marchera sous windows et linux)...

    perso je conseillerai java, car si tu le fais en C, tu vas t'amuser pour qu'il soit multi-plateforme : problème des librairies différentes sous windows et linux, par le meme format d'exécutable...
    le java est fait pour la portabilité et puis tu pourra également facilement faire une version en applet

  11. #11
    Membre actif Avatar de gibet_b
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 292
    Points : 296
    Points
    296
    Par défaut
    Merci déjà à tous ! Je crois que je vais opter pour Java :-)

    Cependant s'il y a d'autres personnes qui veulent donner leur avis !

    Merci encore

  12. #12
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 282
    Points : 11 036
    Points
    11 036
    Par défaut
    C++ -> portable, rien d'autre à installer, mais compilation requise de ton côté pour toutes les plateformes que tu veux supporter.
    En revanche, cela demande plus de rigueur que le Java.

  13. #13
    ovh
    ovh est déconnecté
    Rédacteur
    Avatar de ovh
    Homme Profil pro
    Architecte devops web full stack
    Inscrit en
    Mai 2002
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte devops web full stack

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 841
    Points : 6 514
    Points
    6 514
    Par défaut
    Je n'aime pas trop java, donc moi aussi mon avis sera partial, mais bon

    Il existe une librairie open source multi-plateformes en C++ dont peu de gens parlent : wxWidgets ! Avec ça, tu peux créer des applications pour linux, windows et mac avec un code source unique : il suffit de recompiler sur chaque plateforme pour obtenir un exécutable natif donc par définition optimisé et beaucoup moins lourd qu'une application java qui nécessite de charger tout le moteur et de plus refait toute la couche graphique avec swing et autre, tandis qu'ici l'application c++ wxwidgets utilise les ressources natives du système d'exploitation-cible ! Autre avantage : ce kit propose toute une série de classes de haut niveau pour la création de GUI, les accès fichier, le réseau, etc. qui sont très simples d'emploi (genre la VCL de C++Builder pour ceux qui connaissent, mais en mieux). Un exemple de la puissance de cette lib : la position des éléments pour les GUI est géré comme en java par positions relatives, via une classe "sizer" semblable à l'équivalent en java.

    Bon j'arrête mon plaidoyer, je te laisse choisir, mais moi sans hésitation tu sais ce que je prendrais

  14. #14
    Expert confirmé
    Avatar de Katyucha
    Femme Profil pro
    DevUxSecScrumOps Full Stack Bullshit
    Inscrit en
    Mars 2004
    Messages
    3 287
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Irlande

    Informations professionnelles :
    Activité : DevUxSecScrumOps Full Stack Bullshit

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 287
    Points : 5 075
    Points
    5 075
    Par défaut
    Citation Envoyé par ovh
    Bon j'arrête mon plaidoyer, je te laisse choisir, mais moi sans hésitation tu sais ce que je prendrais
    Tu as raison de prendre Java 8)

    De toute façon, quelque soit le choix, ce sera le bon. Parce que tu as des avantages et des inconvénients dans tout les cas.

  15. #15
    Membre à l'essai
    Inscrit en
    Mai 2002
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 11
    Points : 13
    Points
    13
    Par défaut
    Slt, tu n'est pas forcé à utilisé JVM de java, tu peux compiler ton code en executable Linux sans passer par la JVM . l'execution est plus rapide que la machine vertielle mais moins par rapport au même code écrits en C++.

  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 54
    Points : 57
    Points
    57
    Par défaut
    la majorité des gens ont déjà java d'installé c'est comme winzip, flash et cie

  17. #17
    Membre régulier

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    67
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2004
    Messages : 67
    Points : 108
    Points
    108
    Par défaut
    Citation Envoyé par sonialem2000
    la majorité des gens ont déjà java d'installé c'est comme winzip, flash et cie
    Winzip sous linux ?

  18. #18
    Membre habitué Avatar de tony montana
    Profil pro
    Inscrit en
    Février 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 114
    Points : 136
    Points
    136
    Par défaut
    Citation Envoyé par ourk
    Citation Envoyé par sonialem2000
    la majorité des gens ont déjà java d'installé c'est comme winzip, flash et cie
    Winzip sous linux ?
    +1

    et meme sous windows je préfere utiliser winrar ou 7zip que winzip qui est un peu léger à mon gout, notamment sur le fait qu'il ne gère que les archives ZIP (alors que ce format commence à dater et n'est plus performant comparé aux autres formats)

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

Discussions similaires

  1. le Java est la continuité du C++ ???
    Par Vincent PETIT dans le forum Débats sur le développement - Le Best Of
    Réponses: 33
    Dernier message: 25/08/2005, 21h17
  2. Envoi de Datagrames par IP en JAVA
    Par the java lover dans le forum Développement
    Réponses: 2
    Dernier message: 14/08/2002, 12h44
  3. directx et java?? possible??
    Par jiraiya dans le forum DirectX
    Réponses: 3
    Dernier message: 09/07/2002, 20h55
  4. webcam : lire sur un port usb en c/c++ ou java. sous win. ?
    Par flo007 dans le forum Choisir un environnement de développement
    Réponses: 2
    Dernier message: 25/05/2002, 00h24
  5. Service de nommage java C++
    Par Anonymous dans le forum CORBA
    Réponses: 3
    Dernier message: 15/04/2002, 13h48

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