Il s'agit d'envoyer des messages d'une fenêtre d'une machine à une autre fenêtre d'une autre machine.
En un premier temps, on fera plus simple.
On fabriquera une interface graphique ressemblant à l'appet ci-dessus, avec une ligne de texte éditable et une ligne de texte non éditable. On fera en sorte que, si on écrit quelques mots dans la ligne éditable puis qu'on appuie sur la touche d'entrée du clavier, ces quelques mots apparaissent aussi dans la ligne non éditable.
En un deuxième temps, on utilisera le même type de fenêtre que ci-dessus pour communiquer d'une machine à une autre. La communication se fera par datagrammes. Il n'y aura que deux machines qui communiquent. Le port d'attente de messages, le nom et le port de la machine avec laquelle on communique seront donnés par la ligne de commande, ou, mieux, indiqués par l'interface graphique.
On pourra procéder par étape :
Écrire deux programmes ; l'un qui envoie des datagrammes et qui indique le nom de machine réceptricenuméro et le de port de r&ecute;ception par la ligne de commande, l'autre qui reçoit les datagrammes et qui indique le de port de réception par la ligne de commande.
Intégrer les deux programmes pour faire en sorte qu'on puisse des deux machines envoyer ou recevoir des datagrammes en donnant par l'interface graphique le nom de machine et le numéro de port destinataires et le numéro du port de réception locale.
En un troisième temps, on fera comme précédemment, mais en communiquant en mode connecté (par TCP).Il n'y aura que deux machines qui communiquent. Les ports et noms de machine pourront être indiqués sur la ligne de commande. On essaiera de faire en sorte que l'ordre dans lequel les participants tentent de se contacter n'ait pas d'importance.
En un quatrième temps, on tentera de communiquer par multicast avec toujours le même type de fenêtre ; plus de deux machines pourront participer à la discussion. Un numéro de port et une adresse virtuelle seront décidés et ne changeront pas d'une exécution du programme à l'autre.
Le fichier RecepteurTCP.javaLe fichier RecepteurTCP.java qui ne permet que la réception en mode connecté de messages. le récepteur peut recevoir de plusieurs émetteurs.
Le fichier EchangeTCP.java. Chaque participant donne sur la ligne de commande le nom de la machine avec laquelle il veut communique et le port de connexion sur cette machine.