next up previous
Up: No Title Previous: Processus légers (threads)

Projet

Le but de ce projet est d'écrire une petite application (applet) manipulant les concepts du langage Java. Pour cela il est demandé de réaliser un (mini)tableur de type EXCEL.

1.
Ecrire les différentes classes Java pour implanter un tableur de dimensions fixes 10x10 (on numérote les lignes et les colonnes de 0 à 9), acceptant en entrée : des chiffres, des expressions arithmétiques préfixes, des adresses absolues de cellules et des adresses relatives selon la syntaxe précédente. Il est demandé de tenir compte des préfixes, des adresses absolues de cellules et des adresses relatives selon la syntaxe précédente. Il est demandé de tenir compte des erreurs : division par zéro, adresse invalide et cycle dans une expression. Si la valeur d'une cellule change, les valeurs des cellules dépendantes de celle-ci doivent aussi être modifiées.
2.
Ajouter au moins une des extensions suivantes :
(a)
analyse syntaxique : les formules sont entrées sous forme infixe, les nombres peuvent être plus grands qu'un chiffre;
(b)
propagation : implanter un mécanisme de Thread pour la propagation;
(c)
sauvegarde : ajouter la possibilité de lire et de sauver une feuille de calcul sur disque;
(d)
graphisme : implanter une possibilité d'augmenter ou de réduire le nombre de cellules de la feuille de calcul;

Vous rendrez le jour de l'examen du module Programmation un rapport contenant une description générale du problème, une description de la hiérarchie de classes utilisées et des principaux algorithmes, un listing commenté, un petit manuel d'utilisateur et des jeux d'essai. Pour pouvoir tester votre programme il est demandé d'installer une page WWW sur le serveur étudiant de l'UFR permettant d'exécuter l'applet tableur et de visualiser les programmes sources. Les sources doivent être compatibles avec le jdk 1.1 installé sur les machines de maîtrise. Vous indiquerez l'adresse de votre applet dans le document rendu et vous laisserez les droits en lecture pour pouvoir la tester avec appletviewer.


next up previous
Up: No Title Previous: Processus légers (threads)
Emmanuel CHAILLOUX
12/14/1997