MacConnect
Un réseau social complet, construit depuis la page blanche : profils, publications, likes, commentaires et messagerie entre utilisateurs.
Reconstruire un réseau social, c’est surtout modéliser des relations entre des gens.
Le sujet demandait une application complète pour une entreprise fictive : des profils, un fil d’actualité, des interactions entre utilisateurs et un système de messagerie. Rien d’exotique pris isolément, mais tout doit tenir ensemble.
La vraie difficulté n’était pas d’afficher une publication. C’était de décider comment représenter qui suit qui, qui a le droit de voir quoi, et comment une conversation se rattache à deux comptes sans dupliquer les messages.
Une application PHP organisée en MVC, sans framework : les requêtes passent par un routeur, les contrôleurs portent la logique, les modèles parlent à MySQL. L’interface s’appuie sur HTML, CSS et Bootstrap, et les interactions rapides passent par AJAX.
Trois décisions
-
01
Le MCD avant le code
Publications, likes, commentaires, abonnements et messages se croisent tous. Modéliser ces relations d’abord a évité de devoir réécrire la moitié des requêtes à mi-parcours.
-
02
Du MVC à la main, sans framework
L’objectif pédagogique était de comprendre ce qu’un framework fait à votre place. Écrire le routeur et la séparation des couches soi-même rend le passage à Laravel, ensuite, beaucoup plus lisible.
-
03
AJAX pour les interactions courtes
Un like ou un commentaire ne justifie pas de recharger la page entière. Les actions légères partent en arrière-plan, le reste suit le cycle classique.
Une application déployée et utilisable : création de compte, fil d’actualité, publication, likes et commentaires, et messagerie entre utilisateurs. Des tests unitaires, d’intégration et de charge ont servi à repérer les requêtes trop lentes avant la mise en ligne.
Ce que j’en retiens : écrire soi-même ce qu’un framework automatise coûte du temps une fois, et en fait gagner sur tous les projets suivants.
Voir la démo en ligneProjet suivant