Ce projet vise à créer une plateforme de chat permettant à plusieurs utilisateurs de communiquer en temps réel dans une salle de discussion virtuelle. L'application sera basée sur le middleware RMI (Remote Method Invocation) en Java, offrant une expérience de chat fluide et sécurisée.
Le but principal de ce projet est de fournir une plateforme de chat conviviale et robuste, permettant aux utilisateurs de communiquer en temps réel dans une seule salle de chat. Les objectifs spécifiques incluent :
- Créer une interface utilisateur intuitive pour la saisie des noms d'utilisateur et la navigation dans la salle de chat.
- Utiliser RMI pour permettre la communication entre les différents clients et le serveur de chat.
- Assurer une transmission rapide et fiable des messages entre les utilisateurs.
- Intégrer des fonctionnalités de sécurité pour protéger la confidentialité des utilisateurs et prévenir les attaques malveillantes.
- Permet aux utilisateurs de saisir leur nom d'utilisateur avant de rejoindre la salle de chat.
- Affiche la liste des utilisateurs présents dans la salle de chat.
- Affiche les messages envoyés par les utilisateurs dans la salle de chat.
- Assure une transmission rapide et en temps réel des messages entre les utilisateurs dans la salle de chat.
- Permet aux utilisateurs de voir les nouveaux messages dès qu'ils sont envoyés par d'autres utilisateurs.
- Limite la salle de chat à une seule instance, où tous les utilisateurs se connectent automatiquement.
- Permet aux utilisateurs de quitter la salle de chat à tout moment.
- Permet aux utilisateurs de choisir un nom d'utilisateur unique lors de la connexion.
- Gère les cas où plusieurs utilisateurs choisissent le même nom d'utilisateur.
-
Java:
- Langage de programmation principal pour le développement de l'application de chat.
- Utilisation de Java pour la logique métier, la gestion des interactions utilisateur et la communication réseau.
-
Java Swing:
- Utilisé pour créer l'interface utilisateur graphique de l'application de chat, y compris les zones de texte et les boutons.
-
RMI (Remote Method Invocation):
- Middleware Java utilisé pour faciliter la communication entre les différents clients et le serveur de chat.
- Permet l'appel de méthodes distantes entre les composants du système.
- Cloner le dépôt GitHub.
- Compiler les fichiers Java.
- Exécuter le serveur RMI.
- Exécuter l'application cliente.