Les meilleurs développeurs Java freelances sont sur Codeur.com
Fermé · 30 à 300 € · 2850 vues
Objectif : Création d’une interface de gestion financière personnelle, dont le cœur fonctionnel a déjà été développé. Vous utilisez la librairie Swing et concevrez votre programme selon le modèle MVC.
On suppose que vous êtes en charge de programmer l’interface pour un gestionnaire de finance personnelle dont la partie modèle a été développée par un autre développeur. Ce développeur met à votre disposition :
- une archive « lab2.core.jar » contenant les classes compilées qu’il a construit
- une documentation décrivant l’API qui permet d’utiliser les objets Java du modèle.
Etape de conception
1. Lire l’énoncé dans son intégralité et consulter l’API du modèle
2. Concevoir une interface sur papier
3.Selectrionner les widgets adéquats
4.concevoir la structure du programme en suivant la logique MVC
5.Coder et tester le programme
Environnement de développement
Installation :
Créer un nouveau projet dans Eclipse. Créer un package Java pour vos sources. Copier l’archive « lab2.core.jar », qui contient les classes du modèle de l’application. Ajouter cette archive : cliquer droit sur le projet, choisir « Build Path » puis Add External Archives et sélectionner l’archive
Pour compiler vos sources, cliquer droit sur le projet et choisissez « Build Project ». Pour exécuter votre programme, cliquer droit sur le projet et choisissez Run as, Java Application puis choisissez la classe contenant la fonction main() que vous voulez exécuter.
Cahier des charges de l’interface graphique
L’interface a créer doit permettre :
- d’afficher la liste des transactions d’un compte donnée
- de créer une nouvelle transaction
- d’éditer une transaction existante
- de supprimer une transaction existante
- de sauver le compte dans le fichier d’origine
La documentation sur l’API du modèle de l’application est disponible dans les fichiers
Lorsque l’utilisateur crée une transaction, il doit pouvoir définir tous les paramètres de l’objet Transaction du modèle de l’application ( Cf. documentation) sauf la date qui est automatiquement fixée à la date courante .
Lorsqu’il édite une transaction, il doit pouvoir accéder à tous les paramètres de l’objet Transaction, à l’exception de la date.
Pour commencer, vous débuterez par afficher le compte d’un fichier dont le sera codé en dur et est disponible dans les pièces jointes nommé simpleAccount.tmp
Après avoir programmé l’affichage d’un compte, vous ajouterez les fonctionnalités de création, édition et suppression de transaction.
Précisions sur le modèle
La class Account représente un compte. Un compte possède un label et contient plusieurs transactions. On accède aux transactions à partir du compte avec la méthode getTransaction(int index)
La class Account permet d’écrire et de lire un compte depuis un fichier, avec les méthodes read(java.io.File file) et write(java.io.File file). On accède à la liste des catégories possibles par la méthode getCategories() .
La classe Transaction représente une transaction. Elle est constituée des attributs suivants :
- Caption qui représente l’intitulé de la transaction (exemple : restaurant, supermarché …)
- Amount qui représente le montant de la transaction
- Type qui peut être soit débit ou crédit. Deux constantes de classe sont fournies pour spécifier le type : Transaction.TYPE_CREDIT et Transaction.TYPE_DEBIT
- Date qui représente la date de la transaction. Il s’agit d’un objet java.util.Date.
Pour les opérations de formatage, consultez la classe DateFormat dans la documentation de Java
- Category qui spécifie la catégorie à laquelle appartient la transaction ( exemple : aliment, voiture …)
La classe Category représente une catégorie de transaction. Elle encapsule une chaine de caractère qui est récupérable avec la fonction getCaption(). La liste des catégories s’obtient à partir de l’objet Account, par la methode getCategories().
La classe FinanceTester sert à tester le modèle et à créer le fichier test que vous utilisez.
Pour afficher les transactions, utilisez la classe JTable. Cette classe fonctionne selon le modèle MVC. Vous manipulerez donc le modèle associé qui correspond à une classe implémentant TableModel. En pratique, vous pourrez utiliser soit la classe abstraite AbstractTableMOdel soit la classe DefautTableModel qui implémentent toutes deux TableModel.
Pour créer une instance de File( utile pour les moéthodes read et write de Account) vous pouvez utiliser l’instruction File f = new File (« nom_du_fichier ») ;
Pour manipuler les paramètres « type »et »category » d’une transaction, vous pouvez utiliser des JComboBox
Budget indicatif : 30 à 300 €
Publication : 29 novembre 2013 à 09h30
Profils recherchés : Développeur Java freelance
Déposez une annonce en décrivant votre projet et recevez gratuitement des devis en quelques minutes