Exercice 0

Cette dernière séance de TP est consacrée au TP SQL noté. Ceci dit, cet exercice/projet montre un des intérêts de l'utilisation d'une base de données locale au navigateur.


Choisir une activité qui vous plaît, dans laquelle peuvent avoir lieu des compétitions (tennis, échecs, natation, jeux vidéos...). Écrivez alors – en javascript – un programme d'appariements afin de gérer l'évolution d'un tournoi (prenant en paramètres d'entrée les noms des joueurs et leurs éventuels classements).

Enfin, utiliser Dexie ou sql.js pour persister l'état courant dans une base. Objectif : l'utilisateur doit pouvoir fermer le navigateur, éteindre son ordinateur puis revenir plus tard, retrouvant toutes les données saisies jusqu'alors.

Dexie a l'avantage de ne pas nécessiter d'action utilisateur pour le chargement des données. sql.js nécessite l'ouverture d'un fichier (base sqlite3), mais cela facilite la gestion de multiples tournois. En tout cas les deux sont bien adaptés.


Quel que soit le thème choisi vous aurez besoin au moins de :

  • une table "joueurs" et/ou "équipes" (nom, classement, numéro de licence...)
  • une table "appariements" (ronde, adversaire1, adversaire2...)
  • une table "pays" (nom, code, drapeau)
  • peut-être une table "clubs" (ville, nom)
  • ...etc

Note : il peut être intéressant aussi de disposer de fonctions d'export, à la fois pendant le tournoi (publication des appariements sur un site consultable par les participants), et après : publication des résultats.