Présentation du Projet

💬 MateZone - Application de Chat

Projet Universitaire - SAE 2.03

MateZone est une application de messagerie instantanée développée en Java Swing dans le cadre de la SAE 2.03. Cette solution collaborative implémente une architecture client-serveur robuste avec déploiement Docker pour faciliter la communication en temps réel entre utilisateurs.

Le projet met l'accent sur les bonnes pratiques de développement, la sécurité des communications et l'expérience utilisateur, offrant à la fois des fonctionnalités de chat public et privé.

Java Swing Architecture Client-Serveur Docker POO Réseau

🎯 Contexte et Objectifs

Projet Pédagogique - Semestre 2

Ce projet s'inscrit dans le cadre de la formation BUT Informatique et vise à développer les compétences en programmation orientée objet, architecture logicielle et déploiement d'applications.

  • Développer une application client-serveur complète
  • Implémenter des interfaces utilisateur intuitives
  • Gérer la communication réseau et la synchronisation
  • Containeriser l'application avec Docker
  • Documenter et présenter le projet

Fonctionnalités Développées

MateZone offre une gamme complète de fonctionnalités pour une expérience de messagerie moderne et intuitive.

🔐 Système d'Authentification

Sécurité & Gestion Utilisateurs

Implémentation d'un système complet de gestion des utilisateurs avec authentification sécurisée et création de comptes.

  • Connexion utilisateur avec pseudo/mot de passe
  • Création de nouveaux comptes
  • Gestion des sessions utilisateur
  • Interface de connexion intuitive

💬 Chat Global

Messagerie Publique Temps Réel

Salon de discussion principal permettant à tous les utilisateurs connectés de communiquer ensemble en temps réel.

  • Messagerie publique en temps réel
  • Affichage des messages avec couleurs par utilisateur
  • Rafraîchissement automatique des messages
  • Synchronisation avec le serveur

📨 Messages Privés

Conversations Privées

Système de messagerie privée permettant des conversations individuelles entre utilisateurs avec historique persistant.

  • Conversations privées entre utilisateurs
  • Fenêtres dédiées pour chaque conversation
  • Historique des messages
  • Génération automatique des fichiers

Technologies & Architecture

Découvrez les technologies utilisées et l'architecture mise en place pour ce projet.

⚙️ Stack Technique

Technologies & Frameworks

Le projet utilise un ensemble de technologies modernes pour garantir performance, fiabilité et maintenabilité.

Java 17 Swing GUI Docker Apache Server PHP HTML/CSS

🏗️ Architecture Système

Design Patterns & Structure

Architecture client-serveur robuste avec séparation des responsabilités et gestion des connexions concurrentes.

  • Pattern MVC (Model-View-Controller)
  • Serveur multi-threadé
  • Gestion des sockets TCP/IP
  • Architecture containerisée
  • Interface graphique

Réalisations & Captures

Explorez les différentes interfaces et fonctionnalités développées pour MateZone.

📱 Interface Utilisateur

Captures d'écran de l'application

🎯 Compétences Développées

Apprentissages & Savoir-faire

Ce projet m'a permis de développer de nombreuses compétences techniques et de maîtriser des concepts avancés en programmation.

  • Programmation orientée objet avancée
  • Développement d'interfaces graphiques avec Swing
  • Programmation réseau et gestion des sockets
  • Gestion de la concurrence et des threads
  • Containerisation et déploiement avec Docker
  • Architecture client-serveur
  • Gestion de projet et documentation