Sujet du mini projet

De $1

Version de 05:23, 22 Nov 2024

cette version.

Revenir à liste des archives.

Voir la version actuelle

Introduction

Sans surprise, pour le mini projet vous allez compléter les fonctionnalités du mini-projet qui a servi de fil rouge lors de ce cours. Le sujet se décompose en quatre parties mais toutes ne sont pas obligatoires :

  • Première possibilité : tâches 1, 2, 3
  • Seconde possibilité : tâches 1, 4
  • Evidemment, ceux qui font 1, 2, 4 ou 1, 3, 4 gagnent le jackpot !
  • Ceux qui font 1, 2, 3 et 4 le super jackpot !

Pour information, ceux qui font convenablement le minimum peuvent obtenir une très bonne note, ceux qui font les jackpots gagnent des points bonus.

Le mini projet est à faire à 2 ou à 3 mais attention, pour les groupes de trois, on sera plus exigeants.

La date limite de rendu est le 10 Mai (à confirmer avec Fabrice Huet).

Tâche No 1 : avoir un vrai jeu de données

On ne veut pas d'un mini projet avec trois bookmarks et quatre utilisateurs. Vous peuplerez votre serveur avec une base de au moins 300 bookmarks pour au moins 10 utilisateurs, les bookmarks étant taggués avec des mot-clés significatifs. A vous de voir quelle est la meilleur manière de procéder pour éviter de le faire à la main ! Suggestions :

  • Ecrire un petit programme ou un script ou compléter le TP avec une classe qui peuple le jeu de données, par exemple en attaquant l'API de delicious.com pour récupérer les 300 derniers bookmarks avec leurs tags ? Cela semble une bonne idée non ? 
  • Pour utiliser l'API de delicious.com, on est en plein web 2.0, lire la doc de l'api de delicious ! Nous l'avons fait pour youtube, c'est exactement le même principe.
  • Si vous trouvez un autre moyen pour récupérer quelques centaines d'URLs avec des tags qui décrivent leur contenu, on accepte aussi.

Tâche No 2 : réaliser une interface web publique à la delicious

Il est clair qu'ici, si vous n'avez pas encore de compte sur delicious.com, si vous n'avez pas installé l'extension firefox pour delicious, si vous n'avez jamais bookmarké un site avec delicious en mettant des tags, on se demande ce que vous avez compris du cours et des TPs... Donc, pour ceux qui seraient restés coincés dans les starting blocks -> go delicious !

Il s'agit ici de développer en réalité deux interfaces distinctes : une pour la partie publique de votre serveur de bookmarks.

On vous demande ici de reproduire la fenêtre de delicious.com lorsque vous n'êtes pas loggué sur le site, en version simplifiée. en accédant depuis un navigateur à un URL de votre serveur, par exemple http://localhost:9998/maingui on obtienne une page qui liste tous les bookmarks (enfin, 30 par 30, avec des boutons de navigation "précédent" et "suivants"). pour chaque bookmark on veut :

  • Son titre (c'est aussi un lien <a href...>)
  • Ses tags (ce sont aussi des liens, qui affichent la liste des bookmarkings taggés avec ce tag),
  • Le nombre de personnes qui partagent ce bookmark (c'est aussi un lien qui affiche toutes les personnes), testez sur delicious...

En gros, on a une page qui permet de browser les bookmarks de tout le monde, par titre, par tag ou par personne. On appelle cela de la "navigation par facettes".

On vous demandera ici d'utiliser des requêtes ajax pour interroger les web services, et d'utiliser des fonctionnalités de Dojo pour ces requêtes et pour certaines parties de l'affichage de la page. Vous pouvez utiliser des wigets Dojo Grid comme en TP ou bien vous contenter juste de décorer une page web plus classique (recommandé pour ceux qui ne se sentent pas trop à l'aise, vous pourrez toujours améliorer par la suite)

Tâche numéro 3 : réaliser l'interface web "privée" de delicious

Celle qui s'affiche lorsqu'on est loggué sur le site ! Là on browse ses propres bookmarks, on peut faire des recherches dans ses bookmarks, etc. La navigation par facette est toujours présente néanmoins.

Mêmes conseils que pour la tâche 2 ! Allez-y progressivement. 

Tâche numéro 4 : compléter l'extension firefox boomtag

Qui là aussi est un peu le pendant "master info" de l'extension firefox de delicious (la vraie). Partez du dernier TP, et complétez cette extension, notamment avec les fonctionnalités de recherche de bookmark par tags, et d'ajout de bookmarking, vous pourrez y rajouter un mécanisme d'auto-complétion des tags.