Pages: [1]   Bas de page
Imprimer
Auteur Fil de discussion: Quel format pour une base de données utilisable sur DS  (Lu 1724 fois)
0 Membres et 1 Invité sur ce fil de discussion.
murdock69 Hors ligne
Newbie
*
Messages: 48


Voir le profil
« 19 Août 2007, 14:21:21 »

Bonjour je suis très interessé et motivé pour aider à la réalisation d'un projet de type "encyclopédique" par exemple une encyclopédie sur les champignons, les insectes, les bières du monde, les crados,etc etc... (ce sont des idées). Ma question est la suivante: Si je commence a réaliser une banque de donnée avec pour chaque élément de l'encyclo, une image et du texte, quel format dois je utiliser?
quelle taille d'image? Merci d'avance.
Journalisée
Campanile Hors ligne
Elite Member
**
Messages: 871


Voir le profil WWW
sic

« Réponse #1 : 19 Août 2007, 14:32:05 »

J'aurais tendance à répondre Fichier texte ou xml / DLDI pour les données.
Pour les images ça dépend du type d'image, tout les formats sont convertibles via PaGfx, si tu veux les charger via DLDI, le jpeg et le gif marchent, je sais pas si d'autres aussi...
Jette un oeil sur "28 ans dévolution de console de jeux vidéo qui évoluent" de MasterDjé (dans la compo), y'a les sources avec, ça devrait t'aiguiller.
Journalisée

L'expérience, c'est ni plus ni moins qu'une petite quantité d'information qui aurait été fort utile quelques secondes avant qu'on l'apprenne...
MasterDje Hors ligne
Diet Coke Addict
Global Moderator
*****
Messages: 3242


Voir le profil WWW
« Réponse #2 : 19 Août 2007, 15:50:48 »

hum... jetes un oeil, puis jetes ton oeil... Azn

Evolution : c'est le PIRE exemple ! Grin ! mais c'etait pour me faire la main dans ce genre...

l'expert c'est Nameless... boucoup d'etoiles... tout ça Smiley

mais je partage l'avis de Campanile... la prochaine version de mon programme sera xml /dldi !
« Dernière édition: 19 Août 2007, 15:52:36 par MasterDje » Journalisée

murdock69 Hors ligne
Newbie
*
Messages: 48


Voir le profil
« Réponse #3 : 19 Août 2007, 16:32:04 »

J'ai posé la question en pensant justement aux softs de Nameless et de stravingo où il y a une banque de données importante. Comme je me remets lentement a la programmation je me disais que je pouvais apporter ma contribution d'une autre manière en complétant des bases. Embarrassed
Journalisée
Nameless Hors ligne
Full Member
***
Messages: 153


Voir le profil WWW
« Réponse #4 : 19 Août 2007, 18:07:32 »

Je suis pas expert, hein; j'ai fait ça un peu à l'arrache Azn

Pour constel, les données des étoiles sont dans des .txt tout con (un par constellations), les autres données (genre tableau de cos, etc) c'est du binaire. Les images sont pour l'instant en raw (je sais, c'est mal) parce que je ne savais pas faire autrement avec libnds, mais je viens de découvrir le portage de la libpng de Thoduv (merci à lui au passage), donc je pense convertir tout ça.

Le truc, avant de faire quoique ce soit, c'est de bien réfléchir en fonction de ce dont tu auras besoin. C'est pas quand tu seras à la moitié de ta base de données qu'il faut t'apercevoir que c'est foireux!

Genre une solution peut-être sympa (attention, je sais pas trop ce que tu veux faire, hein!), t'as un fichier et une image pour chaque élément, 1ère ligne du fichier le nom de l'image correspondante, 2ème ligne sa taille en ko et pixel (c'est toujours utile ça), 3ème ligne le titre (faro par exemple Wink ), et le reste ton texte ensuite.

Fait déjà un test réel avec un fichier, et si ça marche, tu continue.
Journalisée

MasterDje Hors ligne
Diet Coke Addict
Global Moderator
*****
Messages: 3242


Voir le profil WWW
« Réponse #5 : 19 Août 2007, 18:16:35 »

... Faro, excellent choix pour commencer !

Si je puis me permettre un conseil qui va dans le sens de Nameless, et surtout si tu te remets au dev ...
Fais des prototypes !! avec 1 ou 2 items (bieres, oiseaux, chiens... ce que tu veux) et vois si tu t'y sens plus en fgets ou dans un big tableau... ou en xml (ce qui sous-entend EFS ou dldi) ...

mon soft "28 ans de consoles portables", à la base, etait basé un chouette proto xml, jamais fini, donc quand il est venu le temps de s'arracher pour la compo, j'ai tout fait à l'arrache moi aussi... Embarrassed  Grin
Journalisée

murdock69 Hors ligne
Newbie
*
Messages: 48


Voir le profil
« Réponse #6 : 19 Août 2007, 20:09:37 »

Ok merci beaucoup pour vos conseils !!!
Journalisée
spalnndsstest Hors ligne
Newbie
*
Messages: 4


Voir le profil
« Réponse #7 : 20 Août 2007, 20:53:01 »

wrong post.

deleted.
« Dernière édition: 21 Août 2007, 02:29:29 par spalnndsstest » Journalisée
stravingo Hors ligne
Sr. Member
****
Messages: 294


Voir le profil WWW
« Réponse #8 : 21 Août 2007, 05:50:34 »

Dans DS Weather Report et dans Treasures of Gaia, j'utilise le même format de base de données, qui est en fait un format perso. Dans un fichier texte, j'ai sur chaque ligne les informations relatives à une ville (code, nom, latitude, longitude, etc.), en stockant les villes par ordre alphabétique, pays après pays.
Et comme j'ai besoin dans mon logiciel de trouver rapidement les villes qui qui correspondent à tel ou tel pays et qui commencent par telle ou telle lettre, j'ai au début du fichier une "table des matières" qui me dit, pour chaque pays, à quelle ligne dans le fichier commencent les villes du pays commençant par la lettre "A", puis celles commençant par la lettre "B", etc. De plus, j'ai aussi au début du fichier le nombre de pays et le nombre total de villes.

Ensuite, au lancement de mon programme sur DS, je charge ce fichier dans des structures de données qui ressemblent à la structuration du fichier (une liste de pays, chacun possédant sa liste de villes et une table des matières permettant de retrouver rapidement les villes commençant par telle ou telle lettre dans la liste de villes)

Bref, en procédant ainsi avec cette table des matières, je peux à la fois charger plus vite mon fichier et en ranger le contenu dans les structures appropriées parce que dans son en-tête j'ai en quelque sorte précalculé des informations (la position des villes des pays dans le fichier), et d'autre part lors de l'utilisation du logiciel je peux plus rapidement accéder aux informations qui m'intéressent.
Il y aurait d'autres techniques à utiliser, table de hashage et compagnie, utilisées par les véritables bases de données, mais l'idée est là : avoir un moyen de trouver rapidement l'information voulue dans ta "base".

Dernière remarque sur ma technique : évidemment, je ne me suis pas amusé à écrire à la main les informations de la table des matières (dans DS Weather, il y a 3347 villes de 53 pays), j'ai donc en fait sur PC un fichier texte qui contient mes données "brutes", les villes rangées en vrac, sans ordre alphabétique, pas rangées par pays, et j'ai écrit un programme que je lance sur PC qui analyse ce fichier et écrit automatiquement le fichier tout propre avec table des matières qui sera utilisé sur la DS.

Donc pour conclure sur tout ça, mon conseil est le suivant :

1) Soit tu utilises un véritable format de base de données, mais - à ma connaissance - il n'y a pas de homebrew sur DS utilisant de telles bases. Il faudrait donc soit écrire toi même le code permettant de gérer ce format (tu vas y passer du temps !), soit trouver un code source existant et le porter sur DS.

2) L'autre solution : tu fais ton format perso. Et pour ça, je te conseille moi aussi le XML, qui a pour avantage de te permettre de rajouter ou d'enlever facilement des champs si tu te rend compte par la suite que tu en as besoin dans ta base de données. Dans ton programme, tu pourras alors uiliser TinyXML - ou autre - pour lire ce fichier et remplir tes structures de données. C'est d'ailleurs ainsi que je procèderai pour mes futurs programmes utilisant des bases de données.
Au pire, si tu trouves que le XML prend de la place (c'est du texte, avec des balises), tu peux faire un peu comme moi : écrire une "moulinette" sur PC qui va analyser ton fichier XML et écrire un fichier au format plus compact correspondant exactement à ce que tu souhaites. En tout cas, l'important c'est d'avoir à la base le fichier XML propre, auquel tu rajoutes tes données, tu en tire ensuite le format que tu souhaites.

Voilou. Tes idées de projets me semblent intéressantes : la DS n'est pas qu'une console de gamers, et je la vois aussi, grâce à son écran tactile, comme le périphérique idéal pour ce type d'application axé sur la consultation d'une base de données bien spécifique. Azn
Journalisée

Mes jeux (Ka-BoOm, Setsuzoku no Puzzle) et apps (DS Weather Report, Treasures of Gaia, Miniville DS Manager) sur DS sont disponibles sur mon devblog
Nameless Hors ligne
Full Member
***
Messages: 153


Voir le profil WWW
« Réponse #9 : 21 Août 2007, 07:40:36 »

C'est fou! On a exactement la même technique Stravingo!!! (excepté le fait que j'utilise Matlab pour convertir et trier mes données).
Journalisée

murdock69 Hors ligne
Newbie
*
Messages: 48


Voir le profil
« Réponse #10 : 21 Août 2007, 08:16:04 »

Ok merci beaucoup pour tes (vos) conseils, je commence a y voir plus clair !!

C'est vrai que le coté, je peux apprendre partout, consulter une info partout grace a la ds m'attire de plus en plus. Quand on voit au Japon le nombre de softs "éducatifs" et culturels ou encore d'aide à la visite d'un pays, je me dis que c'est une chance d'avoir le dev amateur pour concrétiser des softs super enrichissants.
je joue, j'apprends, je joue, j'apprends etc etc....me semble un bon compromis.

ps: Bon ben je vais me mettre au xml alors..(déjà qu'avec le C je dors plus  Smiley )
Journalisée
Pages: [1]   Haut de page
Imprimer

Aller à: