Re: [ostorybook-dev] Réflexions |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/ostorybook-dev Archives
]
Remarque intéressante !
En fait, et c'est le souci constant, pour l'enregistrement des données, il faut savoir faire la part des choses entre deux possibilités:
- soit l'on utilise un outil existant (que ce soit H2, Glide ou un autre)
- soit l'on écrit un système de stockage spécifique.
Dans le premier cas, il n'y a que très peu de travail à faire, l'outil prenant en charge la majeure partie (sauvegarde, validation du fichier créé, lecture sécurisée...) mais nous sommes liés à son mode de stockage !
Dans le second cas, nous sommes libres de définir à notre guise comment se fait le stockage et donc de l'adapter à nos souhaits, mais il faut tout écrire de zéro... et cela peut être compliqué.
On peut parfois transiger, par exemple en ne stockant que les attributs dans le fichier "principal" et en mettant le contenus des scènes dans des fichiers annexes (pourquoi pas en ODT ? on pourrait utiliser indifféremment OpenOffice ou oStorybook pour l'édition,cela rejoint ma position d'avoir les textes en dehors de l'outil mais en gardant aussi l'édition interne ) et même, l'idée est intéressante, empaqueter l'ensemble des fichiers dans un zip (java gère très bien les zip).
Nous avons encore un peu de temps avant de devoir décider...
Jean.
Le 02/12/2020 à 10:53, oStorybook a écrit :
Pour faire suite au fil initié par Chris25 sur le forum, il m'est venu
l'idée suivante:
Nous avons convenu de privilégier le format XML pour la base de données.
Et si au lieu d'un fichier unique qui "embarque" tout on s'attachait à
définir et gérer une collection de fichiers dédiée au différents
éléments? Le fichier principal, le Livre, n'aurait plus à gérer le
détail de chaque élément mais juste les informations strictement
nécessaire pour retrouver et exploiter le fichier concerné. Un exemple
basé sur "le médecin malgré lui":
LeMedecinMalgreLui
|__ LeMedecinMalgreLui.osbk (fichier livre)
|__ Textes
| |__ Scene0101.xml
| |__ Scene0102.xml
| |__ etc...
|__ Personnages
| |__ Sganarelle.xml
| |__ Martine.xml
| |__ Geronte.xml
| |__ etc...
|__ Lieux
| |__ LaCour.xml
| |__ LaMaison.xml
|__ Objets
| |__ Baton.xml
| |__ Bouteille.xml
| |__ etc...
|__ etc...
Dans ce cas le fichier Livre va gérer juste des liens vers les autres
fichiers. Du coup les informations sur les différents éléments seront
très réduites. Exemple pour les personnages:
- dans le fichier Livre on n'a besoin que du Nom et de la Catégorie, et
éventuellement le Genre (pour permettre l'affichage dans l'arborescence
par exemple), soit un champ String (limité à 256 par exemple) suivi de
deux autres String donnant les noms de la catégorie et du genre (ou des
Integer qui obligerait à gérer l'indexation des éléments).
- dans le fichier du personnage on peut avoir toutes les informations
que l'on veut.
Pour la sauvegarde on peut imaginer de compresser tous ces fichiers dans
un ZIP, c'est une option l’arborescence pouvant être maintenue.
Qu'en pensez-vous?
--
oStorybook5 dev