Liste des projets de rattrapage J2ME et XML
Transcription
Liste des projets de rattrapage J2ME et XML
Liste des projets de rattrapage J2ME et XML Moı̈se Valvassori et Nicolas Jouandeau Mon Mar 6 11:31:29 2006 Choisir un projet dans la liste et envoyer ce choix par courrier électronique avant le 10 mars 2006 ([email protected] et [email protected]). Les travaux (exercice + projet) sont à rendre avant le 24 avril 2006. Une soutenance est prévue le 27 avril 2006. Les projets sont individuels. Les voeux seront affectés dans leurs ordres de réception. Ce choix est définitif. Les critères de notation sont entre autre : complétude et correction des programmes proposés, justification et explication de tous les choix critiques, clarté et pertinence du rapport, respect des délais. Les mots-clés (( doit )), (( ne doit pas)), (( requis)), (( devra)), (( ne devra pas)), (( devrait )), (( ne devrait pas)), (( recommandé)), (( peut )) et (( optionnel )) doivent être interprétés comme décrit dans la RFC 2119. 1 Exercice Les questions sont dépendantes. Les solutions proposées sont indépendantes, correctes, complètes et justifiées. 1. Programmer à partir de rien un parseur XML compact de type pull. 2. Programmer à partir d’un parseur pull, un modèle arborescent représentant un document XML quelconque. La bibliothèque et le modèle devront être compacts en vu d’être utilisés dans une MIDlet. 3. Programmer un client XML-RPC à partir de votre bibliothèque. 2 2.1 Projets Shell en XML Réaliser une bibliothèque qui interprète des commandes shell contenues dans un document XML. Le format XML doit être spécifié. Le format et la bibliothèque devront pouvoir évoluer. 2.2 Musique en XML Réaliser une bibliothèque qui interprète des commandes musicales contenues dans un document XML. Le format XML doit être spécifié. Le format et la bibliothèque devront pouvoir évoluer. 2.3 Dessin en XML Réaliser une bibliothèque qui interprète des commandes graphiques contenues dans un document XML. Le format XML doit être spécifié. Le format et la bibliothèque devront pouvoir évoluer. 1 2.4 Ascii Art Réaliser un éditeur Ascii Art. On doit pouvoir sauver le dessin sur le téléphone et sur un serveur. 2.5 Diagramme Ascii Art Faire un port d’une bibliothèque qui convertit de l’Ascii Art en image. http://ditaa.sourceforge.net/ 2.6 Grapheur Faire une bibliothèque qui réalise des graphes. Les données des graphes doivent être fournies dans un document XML. 2.7 Présentateur Réaliser un éditeur et un visualisateur de présentation. La format de la présentation est XML. 2.8 Slide show Faire un programme de visualisation d’image. Les transitions entre les images devront être soignées. On doit pouvoir ajouter facilement de nouvelles transitions (sans refaire tout le programme). 2.9 Jeu de go Faire un interprète du format SGF. Les règles GM[1]FF[3] sont utilisées. Les propriétés suivantes doivent être reconnues : RU, SZ, HA, KM, PW, PB, TM, RE, B, BL, W, Wl, (AE ?), AB, AW, TW, TB. http://www.red-bean.com/sgf/ Idem avec le protocole GTP http://www.lysator.liu.se/˜gunnar/gtp/ 2.10 Port et optimization de Bzip2 Réaliser, optimiser et valider un port de la bibliothèque BZip2. Les classes doivent hériter de InputStream et OutputStream. On peut partir de ce port : http://jakarta.apache.org/commons/sandbox/compress/ 2.11 Chat Réaliser un système de discutions entre deux utilisateurs. Les dialogues doivent être relayer par un serveur. Le serveur doit être spécifié mais son implémentation est optionnelle. 2.12 Lecture .obj Lecteur de fichier 3D OBJ http://www.google.fr/search ?q=obj+format. Les modèles 3D obtenus devront être visualisés sous tous les angles. 2.13 Éditeur Wikipedia Réaliser un éditeur de contenu pour les wikis et les blogs. L’éditeur doit fonctionner hors connexions. Une implémentation pour wikipédia est recommandée. 2 2.14 Benchmark 3D Réaliser un banc d’essais pour les fonctions 3D des téléphones portables. 2.15 Nouveaux Composants Réaliser un des nouveaux composants proposés ci-dessous. 2.15.1 Composant HTML Réaliser un composant permettant de visualiser de l’HTML1. Le composant doit hériter de la classe Item. 2.15.2 sous-menu pour les commandes 2.15.3 composants graphiques redimensionnables 2.15.4 composants graphiques skinables 2.15.5 layout manquant Par exemple BorderLayout, GridLayout, ... 2.15.6 gestionnaire d’ecran avec bureau virtuel 2.15.7 sprite 3D 2.15.8 canvas 3D 2.16 Jeux Les ressources des jeux seront téléchargées lors du premier chargement de celui-ci. Cela permettra à l’éditeur du jeu d’effectuer des contrôles sur l’utilisateur. 2.16.1 Sudoku 2.16.2 first-person shooter avec les 4 niveaux genre les initiaux de doom1 2.16.3 shoot-them-up avec 2 niveaux, comprenant boss et demi-boss 2.16.4 jeu de baseball imaginer 2.16.5 pac-man avec 10 niveaux, bien connu 3 2.16.6 bubble bubble avec 10 niveaux, vénéré 2.16.7 pang avec 10 niveaux et pour le multijoueur ? 2.16.8 mario kart avec un grand prix, nintendomaniac ? 2.16.9 Pong 2.16.10 Taquin 2.16.11 Casse Brique 2.16.12 Course de voiture en 3d 2.16.13 Nethack 3d 4