Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > fr.comp.lang.java > #1593
| From | Yliur <yliur@free.fr> |
|---|---|
| Newsgroups | fr.comp.lang.java |
| Subject | Re: Aide pour une stratégie de programmation. |
| Date | 2017-11-07 15:03 +0100 |
| Organization | Groupes francophones par TrigoFACILE |
| Message-ID | <20171107150354.5dc0969f@free.fr> (permalink) |
| References | <59fc966a$0$20429$426a34cc@news.free.fr> |
Le 03 Nov 2017 16:16:42 GMT
bloiiing <bloiiing.invalid@yahoo.com> a écrit :
> Bonjour à toutes et à tous,
>
> Je poste ce message car j'ai besoin d'aide pour définir une stratégie
> de programmation dans le cadre d'un programme que j'aimerais mettre
> au point en Java. Je précise que ce programme existe déjà dans un
> autre langage, le C++. C'est un logiciel libre sous license GNU, on
> peut donc l'adapter comme l'on veut.
>
> Le logiciel en question s'appelle Plume Creator. Il sert à aider
> l'utilisateur à structurer ses idées pour en faire un livre, un
> article de presse ou de blog, un manuel d'utilisation, etc... Bref,
> c'est un logiciel qui sert à produire des textes. Son concept est
> excellent, c'est pourquoi je voudrais le reprogrammer en lui enlevant
> certaines options inutiles et éventuellement en en rajoutant d'autres.
>
> La raison pour laquelle je voudrais porter ce programme de C++ à
> Java, c'est que le concept est en lui-même génial et fort bien pensé.
> Celui qui l'a écrit est lui-même écrivain, ça se devine. Mais la
> réalisation est inachevée et décevante à l'usage. Étant utilisateur
> de ce programme, je suis confronté à des pertes de données fort
> désagréables. Il est toujours décevant d'avoir perdu une ou deux
> heures de travail à cause d'un logiciel mal programmé...
>
> Vous pouvez tester ce soft en le téléchargeant sur le site de
> l'auteur à http://plume-creator.eu/ . Sous Linux Ubuntu, il est
> installable depuis le centre d'installation des logiciels ( je ne
> sais pas comment ça s'appelle mais je pense que vous aurez compris ce
> de quoi je parle ).
>
> Pourquoi en Java? Parceque c'est mon langage préféré et que je me
> sens capable de mener à bien ce projet dans ce langage.
>
> Je voudrais dans un premier temps arriver à faire le minimum,
> c'est-à-dire un arbre à gauche avec l'arborescence du plan du
> document ( actes / chapitres que l'on doit pouvoir réordonner à
> volonté ), au milieu le texte proprement dit dans un JTextPane et à
> droite le synopsis et les notes de chaque chapitre chacun dans un
> JTextPane. J'aimerais de préférence arriver à faire ça sans pertes de
> données pour l'utilisateur. Ensuite, si je m'en suis sorti, je
> pourrais rajouter des options.
>
> J'en viens donc à l'objet de ce message. J'aimerais avoir l'avis de
> programmeurs expérimentés en Java pour qu'on m'aide à définir une
> stratégie de programmation car je suis en train de m'embrouiller tout
> seul. J'ai des difficultés pour choisir une option de programmation.
>
> J'ai utilisé des JTextPane pour les différents textes ( Notes,
> Synopsis et Corps du chapitre ). J'ai donc 3 JTextPane par chapitre.
> Est-ce que je dois les mettre dans un nouvel Object pour pouvoir les
> sauver en bloc et les restaurer à la demande? Est-ce que je peux
> mettre tous ces Object dans un Vector ( par exemple )? C'est le genre
> de questions que je me pose... Et avant de me lancer plus à fond
> j'aurais aimé qu'on me donne des idées pour réaliser ce programme ou
> du moins pour le démarrer. Je précise que je ne vais pas regarder
> comment ça a été programmé en C++ d'autant que je connais très mal ce
> langage. Je recommence de zero, from scratch... Le programme en
> lui-même est petit ce qui met sa réalisation à ma portée.
>
> Je précise que le devellopement de Plume Creator s'est arëtté en
> 2013. C'est pourquoi je souhaite lui donner une seconde vie en Java.
>
> Si vous avez des idées sur la façon de structurer et sauvegarder mes
> données, je suis preneur.
>
> Merci d'avance.
À mon avis le stockage des objets graphiques (JTextPane et autres) n'a
rien à voir avec leur sauvegarde. Il faut plutôt travailler d'abord sur
le modèle de données (la forme des données) que tu vas manipuler.
Par exemple, sais-tu lister les concepts/éléments manipulés dans ton
programme ? De ce que je lis, tu manipules des chapitres, et pour
chacun un synopsis, des notes et un corps. D'autres informations (un
titre, ...) ? Dans le logiciel d'origine il semble y avoir une
arborescence de je ne sais quoi à gauche.
Ensuite il faut réfléchir à plusieurs aspects relativement
indépendants :
- Comment ces données sont représentées pour leur stockage à long
terme (sauvegarde ; un ou des fichiers par exemple).
- Comment les données sont représentées en mémoire.
- Comment les données sont manipulées par l'utilisateur (interface
graphique).
Par exemple sur le dernier point tu peux créer tous les JTextPane mais
ce n'est pas une obligation : tu pourrais juste en avoir 3 et les
remplir/vider quand tu changes de chapitre affiché par exemple.
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).
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).
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