Tom's Guide > Forum > Programmation > Petits topic sur le JAVA

Petits topic sur le JAVA

Forum Programmation : Petits topic sur le JAVA

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour, je fais un DUT Info et j'adore le JAVA, j'aimerais que l'on discute un peu sur ce language.
Laisser vos problemes, vos astuces, tout ca qoui ...

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Salut
Moi, je viens de commencer java et ça me paraît assez interessant. Mais, j'y connais pas grand chose pour le moment. :-x

Répondre à desiv

Voici ce que j'en pense.

Ce qui est bien dans le Java:
- C'est un très bon langage objets et les types de bases sont des objets
- Il est portable (JVM)
- Il permet de faire pas mal de choses avec le web
- Le garbage collector permet une programmation propre

Ce qui n'est pas terrible:
- Pas d'héritage multiple (ils ne se sont pas cassé la tête pour la compilation)
- La JVM/garbage collector peut faire ramer certains programmes
- Le Framework Swing est buggué (enfin était à la 1.3.x 1.4) quand on l'utilise bien (mais bon aucun n'est exempt de bug).

Pour moi, l'application idéale du Java c'est pour faire un client. Le serveur étant en C ou C++ pour les gros calculs et l'interface en socket ou corba.

Répondre à CRicky

j'aime beaucoup java mais ce langage comporte un gros probleme les appli consomment énormément de ressources,

les trucs graphiques rament tres vite, ce qui limite ce tres beau langage au petites application

a quand une carte d'extention hardware qui permette de faire tourner la machine virtuelle hyper vite? :-P

Répondre à JerryKan

ça existe déjà les processeurs Java ;-)

Répondre à CRicky

Si vous voulez vous pouvez porposer vos petit programmes, moi par exemple, je suis en train de faire un mastermind avec l'interface graphique utilisateur (GUI), bon, pour la GUI ca roule, mais pour le reste je peine un petit peu.
En fait j'ai ma fenetre, un menu pour faire une nouvelle partie, pour afficher les meilleur scores, l'aide et pour quitter le prgm.
Sinon, j'ai aussi fait un textField() pour faire une proposition ainsi qu'un bouton "OK", et un textArea() pour afficher , par la suite, les résultats.

Répondre à thedevilson

Voici le source :

Code :
  1. import java.awt.*;
  2. import java.awt.event.*;
  3. import java.io.*;
  4. import javax.swing.*;
  5. import javax.swing.event.*;
  6. public class Mastermind
  7. {
  8.     public static void main(String[] args)
  9.     {
  10.         MasterFrame frame = new MasterFrame();
  11.         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  12.         frame.setVisible(true);
  13.     }
  14. }
  15. class MasterFrame extends JFrame
  16. {
  17.     public MasterFrame()
  18.     {
  19.         setTitle("MASTERMIND By Fabien VERLOO" );
  20.         setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
  21.         JMenuBar menuBar = new JMenuBar();
  22.         JMenu fileMenu = new JMenu("Fichier" );
  23.         menuBar.add(fileMenu);
  24.         JMenu helpMenu = new JMenu("Aide" );
  25.         menuBar.add(helpMenu);
  26.         JMenuItem newItem = new JMenuItem("Nouvelle partie", new ImageIcon("..\\Mastermind\\images\\new.png" ));
  27.         fileMenu.add(newItem);
  28.         fileMenu.addSeparator();
  29.         JMenuItem scoreItem = new JMenuItem("Meilleurs scores", new ImageIcon("..\\Mastermind\\images\\best.png" ));
  30.         scoreItem.addActionListener(new
  31.             ActionListener()
  32.             {
  33.                 public void actionPerformed(ActionEvent event)
  34.                 {
  35.                     if (scores == null)
  36.                         scores = new scoreFrame();
  37.                     scores.setVisible(true);
  38.                 }
  39.             });
  40.         fileMenu.add(scoreItem);
  41.         fileMenu.addSeparator();
  42.         JMenuItem quitItem = new JMenuItem("Quitter le jeu", new ImageIcon("..\\Mastermind\\images\\cancel.png" ));
  43.         fileMenu.add(quitItem);
  44.         quitItem.addActionListener(new
  45.             ActionListener()
  46.             {
  47.                 public void actionPerformed(ActionEvent event)
  48.                 {
  49.                     System.exit(0);
  50.                 }
  51.             });
  52.         JMenuItem helpItem = new JMenuItem("Aide", new ImageIcon("..\\Mastermind\\images\\help.png" ));
  53.         helpMenu.add(helpItem);
  54.         helpMenu.addSeparator();
  55.         helpItem.addActionListener(new
  56.             ActionListener()
  57.             {
  58.                 public void actionPerformed(ActionEvent event)
  59.                 {
  60.                     if (help == null)
  61.                         help = new helpFrame();
  62.                     help.setVisible(true);
  63.                 }
  64.             });
  65.         JMenuItem aboutItem = new JMenuItem("A propos", new ImageIcon("..\\Mastermind\\images\\about.png" ));
  66.         helpMenu.add(aboutItem);
  67.         aboutItem.addActionListener(new
  68.             ActionListener()
  69.             {
  70.                 public void actionPerformed(ActionEvent event)
  71.                 {
  72.                     if(dialog == null)
  73.                         dialog = new AboutDialog(MasterFrame.this);
  74.                     dialog.setVisible(true);
  75.                 }
  76.             });
  77.         setJMenuBar(menuBar);
  78.         JLabel label = new JLabel("    Entrez un nombre :" );
  79.         JTextField textField = new JTextField(8);
  80.         textField.setMaximumSize(textField.getPreferredSize());
  81.         JButton okButton = new JButton("OK" );
  82.         //********** J'aimerais mettre ici un racourci pour le bouton 'OK', la touche 'ENTREE'. **********
  83.         okButton.addActionListener(new
  84.             ActionListener()
  85.             {
  86.                 public void actionPerformed(ActionEvent event)
  87.                 {
  88.                     JOptionPane.showConfirmDialog(null, "C'est super nul hein ?" );
  89.                 }
  90.             });
  91.         Box hbox = Box.createHorizontalBox();
  92.         hbox.add(label);
  93.         hbox.add(Box.createGlue());
  94.         hbox.add(textField);
  95.         hbox.add(Box.createHorizontalStrut(10));
  96.         hbox.add(okButton);
  97.         getContentPane().add(hbox, BorderLayout.NORTH);
  98.         JTextArea textArea = new JTextArea();
  99.         textArea.setEditable(false);
  100.         JScrollPane scrollPane = new JScrollPane(textArea);
  101.         getContentPane().add(scrollPane, BorderLayout.CENTER);
  102.         
  103.     }
  104.     public static final int DEFAULT_WIDTH = 300;
  105.     public static final int DEFAULT_HEIGHT = 300;
  106.     private JTextArea textArea;
  107.     private JTextField textField;
  108.     private JScrollPane scrollPane;
  109.     private AboutDialog dialog;
  110.     private scoreFrame scores;
  111.     private helpFrame help;

Répondre à thedevilson

J'ai trouver un livre sur le JAVA qui presente yout les paquetages et toutes les classes avec quelques exemples.
C'est tres interessant pour apprendre.

Répondre à thedevilson

Je suis en train defaire un navigateur Internet, j'aimerai savoir comment on pourait faire pour afficher une page dans un composant.

Répondre à thedevilson

Avec les classes JEditorPane, HTMLDocument et HTMLEditorKit ;-)

Sur le thread, j'avais mis un lien qui donnait un petit exemple:
http://www.infos-du-net.com/forum/page-129858_21_0.html

Répondre à CRicky

Ouais, j'ai essayer un truc avec unJEditorPane, mais ma fenetre ne s'affiche pas !
Je ne comprend pas vraiment ce qui se passe .

try {
String url = "www.google.fr";
JEditorPane pane = new JEditorPane(url);
...
} catch (IOException e) { }

Au fait le lien que tu as donner dans l'autre topic ne marche pas!

Répondre à thedevilson

Chez moi ce lien marche : http://www.apl.jhu.edu/~hall/java/ [...] rPane.html

Bref, il est indiqué ceci:

Code :
  1. String url = "http://host/path";
  2. try {
  3.   JEditorPane htmlPane = new JEditorPane(url);
  4.   htmlPane.setEditable(false);
  5.   someWindow.add(new JScrollPane(htmlPane);
  6. } catch(IOException ioe) {
  7.   System.err.println("Error displaying " + url);
  8. }


As-tu mis ton JEditorPane dans une fenêtre ?

Répondre à CRicky

Ouais, j'ai construit une fenetre avec JFrame,
Voici le code en entier :

Code :
  1. try {
  2.     String url = "http://java.sun.com";
  3.     JEditorPane editorPane = new JEditorPane(url);
  4.     editorPane.setEditable(false);
  5.     JFrame frame = new JFrame();
  6.     frame.getContentPane().add(editorPane, BorderLayout.CENTER);
  7.     frame.setSize(800, 500);
  8.     frame.setVisible(true);
  9. } catch (IOException e) {
  10. }

Répondre à thedevilson

C'est peut-être le site qui ne va pas.
Essaie avec une page HTML local ou une page HTML basique, ou pointe directement sur une page HTML basique (sans redirection ni javascript).

Répondre à CRicky

Ouais, y'a pas moyen de faire afficher une page vraiment basique !!!
J'ai changer un peu le source, parce que lorsque je lancait l'application, il ne se passait rien du tout !
Maintenant ça m'affiche la fenetre mais rien d'autre !! :-x

Répondre à thedevilson

vous connaisez des tutoriaux pour m'aidé ?
parce que j'ai du mal avec du java !!!!!!!!!! :-(

Répondre à bibou2b

Citation :


TheDevilSon a écrit :
Ouais, y'a pas moyen de faire afficher une page vraiment basique !!!
J'ai changer un peu le source, parce que lorsque je lancait l'application, il ne se passait rien du tout !
Maintenant ça m'affiche la fenetre mais rien d'autre !! :-x


Ah je viens de penser à un truc... le firewall :-D
As-tu ouvert le port http (port 80) pour ce programme java ? ;-)

Pour les tutoriaux de Java:
http://java.sun.com/docs/books/tutorial/

Répondre à CRicky

Je ne sait pas :
Je suis a l'université, les ordi sont des UNIX, je ne sait pas comment ouvrir des ports

Répondre à thedevilson

Si tu es sous UNIX et que tu as accès à internet avec la machine, ce n'est pas ça le problème puisqu'on n'associe pas de programme aux ports.
Alors, je ne vois pas où est le problème.

Répondre à CRicky

Citation :

bibou2b a écrit :
vous connaisez des tutoriaux pour m'aidé ?
parce que j'ai du mal avec java



Il existe de très bons cours et tutoriels en français pour Java, par exemple :

-> Cours d'introduction au langage Java

-> Excellent et célèbre cours "Comment penser en Java"

Et à ne pas oublier, une adresse incontourable : Les F.A.Q Java

Répondre à Zharnt

bon ba moi j'ai une petite question sur le java ou peut-être pas vraiment ...
En gros j'ai fait un prog qui simule la bourse, adapté aux consomations d'un bar, ca tourne on l'a même utilisé lors d'une soirée étudiante.
maintenant je voudrais faire pareil mais avec plusieurs PC. Je me suis renseigné sur les sockets ca ca devrait aller, mais je ne sais absolument pas si je dois faire des trucs avant directement sur les PC
par exemple si je les connecte entre eux via un rooter, je suppose qu'il y a des configs à faire avant de faire genre :
serveur :
ServerSocket ssocket = new ServerSocket(Nport);
Socket com = ssocket.accept();
et
client :
Socket com = new Socket(IPhote, Nport);
j'ai beau chercher sur le net je trouve rien la dessus :-?
merki d'avance :-D

Répondre à boule_t

Ca serais pas plus simple avec un sgbd (JDBC) tout simplement plutot qu'avec des sockets ?

Répondre à Zharnt

Bon enfin si tu y tiens les sockets pour Java c'est Ici

Répondre à Zharnt

non mais en fait j'ai dit que le côté java c'était ok
le seul truc qui me manqué c'était du côté du PC genre ouverture des port ou je sais pas quoi
mais finallement c'est bon

Répondre à boule_t

ba tiens je viens juste d'avoir un problème en java alors je me dirige vers vous :-D
alors voila
j'ai une classe et, je sais pas comment on dit en français :-? , mais elle est ?étendu? à une Frame mouai bof
je vais la refaire :
public class creation extends Frame implements ActionListener
voila comme ca tous le monde comprends mais si vous avez la version francaise faites passer :-)
et donc j'ai ma methode keydown avec un petit truc dedans
mais il y a un hic !
quand je presse une touche, rien ne se passe !
et j'ai remarqué que quand je vire mon JPanel ou j'ai mi mes bouton et mes zone de text, et bin ca marche !
alors le problème c'est que je voudrais que ca marche sans avoir à virer tout ca... logique non ?
bon bin voila c'es tout si vous avez une solution c'est cool
merci davance :-P

Répondre à boule_t

ta classe hérite de Frame ;-)

En fait ton problème est un problème de focus. Si ça ne marche pas bien, met le focus sur ta frame et dans ta fonction fait appel à la même fonction du JPanel.
Bon je ne suis pas sûr du tout (ça fait un moment que j'ai pas touché à ça).

Répondre à CRicky

Moi, je débute en java, je travail essentiellement l'interface graphique.

Mais dans le bouquin que j'ai acheté et sur les sites, il y a surtout les bases, et sur l'api ce n'est pas toujours évident.
Est-ce que vous connaissez des livres/sites plus spécialisés sur l'interface graphique, notament pour les animations?

Répondre à sylvie@IDN

Tutoriels java spécialisés interface graphique :
Interfaces Graphiques (Swing/AWT, 2D, 3D, ...)

Répondre à Zharnt

comment parlé du java ...sans en venir au jsp :D ???
perso le meilleur des langages web a mon gout ...

Répondre à Renard310

J'ai emprunter un bouquin sur le jsp, faut-il un logiciel particulier pour que des pages xxx.jsp fonctionnent ???

Répondre à thedevilson

je sais pas ce que c'est le jsp a part peut-être java server page... :-)
sinon j'ai avencer dans mon projet ! mais il me manque une donnée que je ne trouve pas sur le net :
comment on implémente de l'opengl en java
et aussi une autre question
j'ai vu qu'avec opengl on peut faire tous les calcul de rotation et tout mais moi je le fais déja en C il que je refasse tout en opengl ou je laisse en C en gros la question c'est est-ce que tous les calcul en opengl sont fait avec la carte graphic ou pas ?

Répondre à boule_t

Citation :

comment on implémente de l'opengl en java


par exemple avec JOGL

Citation :

c'est est-ce que tous les calcul en opengl sont fait avec la carte graphic ou pas ?


oui, tous les calculs matriciels sont faits sur la carte graphique, sauf si ta carte graphique est trop vieille et n'integre pas OpenGL, auquel cas, ce sera une emulation logicielle qui fera les calculs

Répondre à khayyam

ha fait chier faut tout refaire en opengl alors... ba o bouloww :-P

Répondre à boule_t

On peut forcer l'émulation logicielle, mais ça n'a aucun intérêt, car de toute façon c'est la lib qui fait tout.

Répondre à CRicky

ba voila je suis aller sur un site qui explique comment faire pour implémenter du jogl dans mon application mais ca marche po
alors je me demande quand même un truc : j'ai mis des fichiers jar dans mon dossier "ext", mais je n'ai pas signalé à mon compilateur que j'avais rajouter des trucs alors c'est peut-être pour ca ? j'ai net beans comme compilateur, vous pouvez m'aider :-D

Répondre à boule_t

Ce que je sais, moi, c'est que je ne m'y conanis pas trop dans ce domaine la !

Répondre à thedevilson

Est-ce que quelqu'un pourrait me dire si il est possible de faire disparaitre le curseur de la souris lorsque celle-ci rentre dans une fenetre ?
Parce que j'ai fait une petite classe qui me construit un viseur de sniper et j'aimerait que le curseur de la souris disparaisse quand je suis dans ma fenetre .

Répondre à thedevilson
Tom's Guide > Forum > Programmation > Petits topic sur le JAVA
Aller à :

Il y a 2767 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens