0% ont trouvé ce document utile (0 vote)
4 vues2 pages

Programmation réseau en Java : Sockets et chat

Ce document présente un cours sur la programmation réseau avec Java, structuré en quatre chapitres. Il aborde les concepts fondamentaux des sockets, les types de communications réseau, les protocoles TCP et UDP, ainsi que les classes Java utilisées pour la communication client-serveur. Le cours inclut également des projets pratiques, tels que la création d'un serveur simple et d'un serveur multi-clients pour un chat en groupe.

Transféré par

jojoyeux811
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
4 vues2 pages

Programmation réseau en Java : Sockets et chat

Ce document présente un cours sur la programmation réseau avec Java, structuré en quatre chapitres. Il aborde les concepts fondamentaux des sockets, les types de communications réseau, les protocoles TCP et UDP, ainsi que les classes Java utilisées pour la communication client-serveur. Le cours inclut également des projets pratiques, tels que la création d'un serveur simple et d'un serveur multi-clients pour un chat en groupe.

Transféré par

jojoyeux811
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Plan détaillé du cours

Chapitre 1 : Introduction aux Sockets

1.1. Définition d’un socket

 Notion d’extrémité de communication


 Rôle des adresses IP et des ports

1.2. Types de communications réseau

 Modèle Client-Serveur
 Modèle Pair-à-Pair (comparaison)

1.3. Protocoles utilisés

 Présentation du protocole TCP


 Présentation du protocole UDP
 Tableau comparatif TCP vs UDP

1.4. Pourquoi utiliser Java pour la programmation réseau ?

 API Java ([Link])


 Portabilité du langage
 Gestion automatique des threads et exceptions

1.5. Applications

Chapitre 2 : Les classes principales utilisées dans la programmation client–


serveur en Java

2.1. Communication via TCP (Transmission Control Protocol)

 ServerSocket : création d’un serveur qui écoute


o Méthodes principales : accept(), close()
o Exemple d’écoute sur un port
 Socket : établir une connexion côté client
o Méthodes principales : getInputStream(), getOutputStream(), close()
 Flux de communication (TCP)
o InputStream / OutputStream : lecture et écriture binaires
o BufferedReader / PrintWriter : communication textuelle simplifiée
 Gestion des erreurs réseau (TCP)
o IOException
o Port déjà utilisé / refus de connexion

2.2. Communication via UDP (User Datagram Protocol)

 DatagramSocket : envoi et réception de datagrammes


o Méthodes principales : send(), receive(), close()
 DatagramPacket : encapsulation des données à transmettre
o Constructeurs principaux : envoi et réception de paquets
 Flux de communication (UDP)
o Communication par paquets indépendants, sans flux continus
 Gestion des erreurs réseau (UDP)
o IOException
o Port déjà utilisé / perte de paquet

Chapitre 3 : Premier projet — Communication simple client ↔ serveur

3.1. Objectif du projet

 Créer un serveur qui reçoit un message et répond au client.

3.2. Étapes de développement

 Écriture du serveur (classe ServerSocket)


 Écriture du client (classe Socket)
 Test en local (localhost)

3.3. Analyse des flux et du déroulement de connexion

 Ouverture → Échange → Fermeture

Chapitre 4 : Serveur multi-clients et chat en groupe

4.1. Limites du modèle simple (un seul client à la fois)


4.2. Introduction au multithreading en Java
4.3. Création d’un serveur qui gère plusieurs clients simultanément

 Utilisation d’un Set<PrintWriter> pour stocker les clients connectés


 Diffusion des messages (broadcast)

4.4. Création du client de chat

 Thread d’écoute pour recevoir les messages


 Thread principal pour envoyer des messages

4.5. Test collectif : tous les étudiants connectés sur le même serveur

 Simulation d’un chat de groupe en LAN (on peut aller plus loin si possible)

Vous aimerez peut-être aussi