Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > fr.comp.lang.java > #1595
| From | Yliur <yliur@free.fr> |
|---|---|
| Newsgroups | fr.comp.lang.java |
| Subject | Re: Aide pour une stratégie de programmation. |
| Date | 2017-11-09 09:15 +0100 |
| Organization | Groupes francophones par TrigoFACILE |
| Message-ID | <20171109091546.54256f71@free.fr> (permalink) |
| References | <59fc966a$0$20429$426a34cc@news.free.fr> <20171107150354.5dc0969f@free.fr> <5a03af3a$0$7158$426a74cc@news.free.fr> |
Le 09 Nov 2017 01:28:26 GMT bloiiing <bloiiing.invalid@yahoo.com> a écrit : > Yliur wrote: > > > Réfléchir d'abord aux données et à leur représentation en mémoire, > > indépendamment de l'interface, peut t'aider à éviter de lier la > > construction de cette interface à ce que tu veux faire des données, > > il sera ensuite plus facile de faire évoluer les fonctionnalités du > > logiciel). > > > > C'est une très bonne idée. Je pense que je vais créer une classe > Chapitre, mais ses attributs risquent de varier dans le temps... > Ensuite je pourrais mettre ces objets dans un Vector par exemple. > Ensuite il y aura tout le travail pour utiliser ces données. Si je > fais ça, lorsque je modifierai le texte d'un JTextPane est-ce que ce > texte sera modifié également dans l'objet Chapitre contenu dans le > vecteur? Je pense que oui mais j'ai simplement un doute. Non : la représentation des données en mémoire est indépendante de leur représentation graphique. Tu peux faire le lien manuellement comme ça : tu crées les composants graphiques à droite pour l'édition d'un chapitre (un seul jeu de composants pour tous les chapitres), quand un utilisateur clique sur le chapitre dans l'arborescence tu copies les données à éditer dans les composants d'édition à droite, quand il arrête l'édition de ce chapitre tu recopies les données du composant d'édition dans les objets de données. Tu peux aussi faire quelque chose de plus automatique, comme variante du paragraphe précédent : intercepter l'événement indiquant que le texte d'une zone de saisie a changé et modifier l'objet de données correspondant (il faut donc un lien vers l'objet de données représentant le chapitre en cours d'édition). La solution retenue peut dépendre de ce que tu veux faire des données : par exemple si tu veux pouvoir faire en même temps que l'édition d'un chapitre une recherche dans l'ensemble des chapitres, celui-ci compris, mieux vaut que les données soient à jour dans les objets de données. Si au contraire tu veux que l'utilisateur puisse valider/annuler l'édition d'un chapitre, il peut être plus simple de ne recopier les données du composant graphique dans l'objet de données que lors de la validation (bien qu'on pourrait faire autrement aussi). À toi de voir comment tu manipules tes données. > > Donc par exemple tu peux avoir une classe java représentant un > > chapitre, avec des attributs pour les notes, synopsis et corps. > > Ensuite il faut te demander comment sauvegarder et recharger ces > > données dans des fichiers (ou une base de données, mais j'ai > > l'impression que tu ne penses pas faire grand chose d'autre que les > > charger/enregistrer). Et, indépendamment de ça, tu peux te demander > > comment créer l'interface graphique permettant de modifier ces > > données. Ce dernier point n'a rien à voir avec la sauvegarde et il > > ne devrait pas y avoir de lien entre les questions sur l'interface > > et les questions sur la sauvegarde. Par exemple à un moment donné > > dans l'interface il n'y a que trois zones de texte affichées, en > > créer un grand nombre (trois par chapitre) n'est pas forcément une > > bonne idée (note que si ça ne concerne que des chapitres, donc > > quelques dizaines par ouvrage, ce ne serait sans doute pas si > > violent que ça d'un point de vue performances ; mais à la base ce > > que tu veux en parallèle ce sont des chapitres stockés en mémoire, > > pas leur représentation graphique, et ce serait utile pour ta > > conception de bien séparer ces deux idées). > > Je vais essayer comme ça. Effectivement je n'ai pas besoin d'utiliser > une base de données. Je vais me lancer et je te dis merci pour tes > idées. Ça devrait être bon normalement. > > Merci à toi. Je reviendrai peut-être en cas de problèmes. De rien, n'hésite pas à poser tes questions.
Back to fr.comp.lang.java | Previous | Next — Previous in thread | Next in thread | Find similar
Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-03 16:16 +0000
Re: Aide pour une stratégie de programmation. Yliur <yliur@free.fr> - 2017-11-07 15:03 +0100
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-09 01:28 +0000
Re: Aide pour une stratégie de programmation. Yliur <yliur@free.fr> - 2017-11-09 09:15 +0100
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-11 13:48 +0000
Re: Aide pour une stratégie de programmation. Yliur <yliur@free.fr> - 2017-11-11 18:33 +0100
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-14 03:39 +0000
Re: Aide pour une stratégie de programmation. Yliur <yliur@free.fr> - 2017-11-14 12:27 +0100
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-15 03:48 +0000
Re: Aide pour une stratégie de programmation. Samuel DEVULDER <samuel-dot-devulder@laposte-dot-net.invalid> - 2017-11-15 08:44 +0100
Re: Aide pour une stratégie de programmation. Yliur <yliur@free.fr> - 2017-11-15 09:10 +0100
Re: Aide pour une stratégie de programmation. Samuel DEVULDER <samuel-dot-devulder@laposte-dot-net.invalid> - 2017-11-15 09:31 +0100
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-17 01:45 +0000
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-15 04:45 +0000
Re: Aide pour une stratégie de programmation. Samuel DEVULDER <samuel-dot-devulder@laposte-dot-net.invalid> - 2017-11-15 09:44 +0100
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-17 01:33 +0000
Re: Aide pour une stratégie de programmation. Yliur <yliur@free.fr> - 2017-11-15 09:57 +0100
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-17 01:24 +0000
Re: Aide pour une stratégie de programmation. Yliur <yliur@free.fr> - 2017-11-17 08:32 +0100
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-19 06:08 +0000
Re: Aide pour une stratégie de programmation. Samuel DEVULDER <samuel-dot-devulder@laposte-dot-net.invalid> - 2017-11-19 08:38 +0100
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-19 12:27 +0000
Re: Aide pour une stratégie de programmation. Samuel DEVULDER <samuel-dot-devulder@laposte-dot-net.invalid> - 2017-11-20 01:33 +0100
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-20 20:51 +0000
Re: Aide pour une stratégie de programmation. Yliur <yliur@free.fr> - 2017-11-19 10:13 +0100
Re: Aide pour une stratégie de programmation. Yliur <yliur@free.fr> - 2017-11-19 10:51 +0100
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-19 12:20 +0000
Re: Aide pour une stratégie de programmation. Yliur <yliur@free.fr> - 2017-11-19 14:42 +0100
Re: Aide pour une stratégie de programmation. bloiiing <bloiiing.invalid@yahoo.com> - 2017-11-19 15:55 +0000
csiph-web