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

Graphisme Java Discussion :

Graphisme + GUI : Quelle API ?


Sujet :

Graphisme Java

  1. #1
    Membre à l'essai
    Étudiant
    Inscrit en
    Août 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 11
    Points : 11
    Points
    11
    Par défaut Graphisme + GUI : Quelle API ?
    Bonjour,
    J'aimerais savoir quelle serait la meilleure API pour développer une application avec GUI et dessin 2D (et éventuellement 3D).
    JFace à l'air de pouvoir convenir pour le dessin mais peut-on l'utiliser pour une GUI au même titre que AWT/Swing ?


    Autre question (mais qui n'a rien à voir avec le GUI), quelle API permet la programmation réseau ?

    Merci

  2. #2
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 736
    Points
    3 736
    Par défaut
    tes questions sont tres vagues, pas facile de repondre.

    Java2D est je pense beaucoup plus complet que ce que peut apporter SWT.
    disons que le standard en java c'est de developper en Swing/Java2D voir Jogl pour la 3D : apres tu peux toujours utiliser d'autres apis (QT, Gnome etc...)

    sinon, pour les reseaux : meme probleme. entre le package java.net et le framework apache mina il y a un monde

  3. #3
    Gfx
    Gfx est déconnecté
    Expert éminent
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Points : 8 178
    Points
    8 178
    Par défaut
    Swing+Java2D pour la 2D et rajoute JOGL ou Java3D/JOGL pour la 3D.
    Romain Guy
    Android - Mon livre - Mon blog

  4. #4
    Futur Membre du Club
    Inscrit en
    Mai 2006
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    JFace à l'air de pouvoir convenir pour le dessin
    JFace ne rajoute rien pour facilité le dessin, tu peux faire de la 2d à partir d'un canvas avec swt et utilisé de la 3d. Certaines fonctions 2d ne fonctionnent pas sur toute les platformes.
    Si ce que tu cherche à faire est plus dans la veine d'un outils de modélisation regarde du coté de GEF/draw2d (c'est une api pour faire des éditeur graphiques).

  5. #5
    Membre chevronné
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Points : 1 958
    Points
    1 958
    Par défaut
    Pour la question concernant la programmation réseau, faudrait que tu nous dises ce que tu qualifies de tel car s'il s'agit de manipuler des données en TCP ou UDP via des sockets, la librairie java.net incluse par défaut dans le JDK fera l'affaire.

  6. #6
    Membre à l'essai
    Étudiant
    Inscrit en
    Août 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 11
    Points : 11
    Points
    11
    Par défaut
    En fait je dois faire un jeu de reversi en java qui doit être jouable en réseau (client/serveur), il me faut donc une API réseau et une API GUI qui permet le dessin 2D, et j'ai précisé éventuellement 3D car certains membres de l'équipe envisage de le faire en 3D.

  7. #7
    Membre chevronné
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Points : 1 958
    Points
    1 958
    Par défaut
    Pour la partie client-serveur java.net conviendra parfaitement. Ce package est inclus dans la JDK.
    Faudra que tu te renseignes plus précisément sur les classes ServerSocket Socket et aussi les Threads si tu veux pouvoir gérér plusieurs clients simultanément.

  8. #8
    Membre à l'essai
    Étudiant
    Inscrit en
    Août 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 11
    Points : 11
    Points
    11
    Par défaut
    Merci pour les info iohack

  9. #9
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 851
    Points
    22 851
    Billets dans le blog
    51
    Par défaut
    Si tes clients et ton serveur sont tous en Java, tu peux voir du cote de RMI (inclus dans le JDK), ce qui t'eviteras de devoir trop taper dans la couche basse reseau et de pouvoir transferer/manipuler des objets a travers le reseau.

    Si tes clients et ton serveur sont dans des languages differents, tu peux rester en communication socket basique ou utiliser un protocole/type de transfert connu (HTTP, XMLRPC...) ou encore utiliser CORBA (un ORB basique est inclus dans le JDK egalement et il est possible d'en utiliser des externes. comme pour RMI de maniere a transferer/manipuler des objets a travers le reseau plutot que de simple "messages"/"paquets de donnees").

    Tout depent du temps que tu veux passer a develloper la couche reseau par rapport a la gestion du jeu et a l'affichage sur les 2 types de clients. Tout est de toute maniere faisable avec de simple sockets.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  10. #10
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Pas besoin d'utiliser RMI pour faire passer des objets sur le réseau.
    Une simple sérialisation le permet.
    C'est très facile à faire avec de simples socket.

  11. #11
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 851
    Points
    22 851
    Billets dans le blog
    51
    Par défaut
    Exact j'avais oublie de preciser cet options parmi tout ce qui est disponible. Apres le tout est de savoir si on aime ou pas taper dans les protocole de bas niveau*, mais la c'est un choix que lui et son equipe devront faire eux-meme.

    *Dans le sens bas niveau : il faut ecrire soit-meme le protocole de transfert et gerer soi-meme les erreurs reseaux Vs. haut-niveau on se contente de laisser le framework existant le faire et on utilises des modeles se rapprochant plus de la programmation en local. Note que les deux cotes ont des avantages et des inconvenients et je n'essaie pas d'en mettre un en avant par rapport a l'autre.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  12. #12
    Membre chevronné
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Points : 1 958
    Points
    1 958
    Par défaut
    Gérér les erreurs réseau ? avec UDP, je suis daccord, mais en TCP, la seule erreur qui puisse intervenir est une coupure de la liaison ? on m'aurait menti ?

  13. #13
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 851
    Points
    22 851
    Billets dans le blog
    51
    Par défaut
    [HS]
    Les erreurs dans le protocole utilise par l'application, pas celles generees dans le cadre de l'utilisation de la socket brute (tu as vise un couche trop bas). Typiquement dans mes applications distribuee je me concentre sur les gestions d'erreurs d'utilisation "normales" (comme si je programmais en local) meme s'il faut un minimum de gestion des erreurs (l'initialisation de l'ORB et la localisation du serveur principalement) et de de deco quand meme (bien sur).

    Mais je ne reimplemente pas toute la partie de gestion des les erreurs de recontruction de paquets, de serialisation/deserialisation, marshalling de l'objet, etc... ou sur a quel endroit du dialogue (et de la reconstruction du message/buffer) et dans quel etat on en etait quand ca a coupe. La creation d'un protocole maison j'ai deja donne (dialogue Java <-> PERL), non-merci (mais c'est juste mon avis a moi)...

    Evidement dans le cote inconvenients de RMI/CORBA il y a le fait d'avoir a utiliser des services par forcement toujours utiles. Ex : quand on est pas dans une grande entreprise ou un reseau interne tres frequente on peut largement se passer du NamingService en CORBA et utiliser des URLs Corbaloc directes pour joindre le server mais la plupart des didacticiels/implementations ignorent ou sont tres discretes sur la mise en place de cette fonctionnalite. Question stupide d'un utilisateur lambda : "pourquoi il me faut installer/configurer/utiliser un troisieme programme pour utiliser ces deux-la (sous-entendu : le serveur et le client) ?".

    Par contre cela fait longtemps que je n'ai pas fait de RMI et donc j'ignore si on peut se passer du NamingService, un concept tres boulet en soit (voir citation), donc dans le cas ou on ne peut pas le shunter, passer directement des objets serialises en socket s'avere une alternative TRES TRES interessante. De plus le fait d'utiliser RMI rend tout de suite le code moins "transposable" dans un autre language (au cas ou pour une X raison il faudrai creer une version du client dans un autre language - Le probleme se pose un peu moins en CORBA car il existe des ORBs multi-platformes dispo en Java, C++, ... et qu'avec IIOP ils sont capables de se parler entre eux). Evidement s'ils restent 100% Java il ne faut pas tenir compte de ce dernier argument.

    [/HS]
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

Discussions similaires

  1. [Info] Quelle API graphique pour une "carte habitée"
    Par loz dans le forum SIG : Système d'information Géographique
    Réponses: 16
    Dernier message: 07/11/2008, 00h15
  2. Quelle API pour detecter un Exe qui s'execute.
    Par caviar dans le forum MFC
    Réponses: 3
    Dernier message: 20/04/2006, 13h26
  3. [J2EE] quelle API pour Excel choisir ?
    Par vallica dans le forum Documents
    Réponses: 4
    Dernier message: 19/04/2006, 14h24
  4. [Cryptographie] Quelle api utiliser ?
    Par loupblanc dans le forum Sécurité
    Réponses: 2
    Dernier message: 03/02/2006, 15h52
  5. Petit moteur 2D, quelle API?
    Par SuperCed dans le forum OpenGL
    Réponses: 5
    Dernier message: 11/04/2005, 19h56

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