JeuWeb - Crée ton jeu par navigateur
[Conception] Votre technique de conception de BDD en cas d'héritage - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Conception] Votre technique de conception de BDD en cas d'héritage (/showthread.php?tid=5727)

Pages : 1 2 3


RE: [Conception] Votre technique de conception de BDD en cas d'héritage - Sephi-Chan - 05-10-2011

(05-10-2011, 04:26 PM)Hideaki a écrit : @Sephi-chan : Cela dépend grandement du type de donnée que tu y stocks et de leur nombre et les requêtes à la main, comme les analyses sont tout de même plus chiante à faire.

Dans quel cas utiliser STI n'est pas intéressant ?


(05-10-2011, 04:26 PM)Hideaki a écrit :
Citation :Ok, les joueurs et les bâtiments ont tous les 2 des coordonnées sur la map, mais c'est un rapprochement mineur : inutile de partager si peu de comportements similaires. C'est d'ailleurs là qu'un langage comme Ruby tire son épingle du jeu grâce aux modules : sans hériter, on peut quand même avec des comportements communs en incluant un module — appelons-le Mappable — qui contiendra le code commun).
En php, il n'y a pas d'interface comme l'ensemble des langages objets ou d'annotation (sens java du terme) ?

Une interface (ça existe en PHP mais pas en Ruby) ne fournit que les prototype, tu dois quand même te coltiner l'implémentation des méthodes (disons par exemple drop(x, y)) côté joueur et côté building. Les modules te permettent d'éviter ça (exemple). Smile




RE: [Conception] Votre technique de conception de BDD en cas d'héritage - Hideaki - 05-10-2011

Dans le cas d'utilisation de clef étrangère qui est uniquement dans la classe fille par exemple.




RE: [Conception] Votre technique de conception de BDD en cas d'héritage - Sephi-Chan - 05-10-2011

Si tu fais ça, c'est que tu n'adoptes pas STI. Moi ce que je demande, ce sont des exemples concrets où utiliser l'un des deux autres patterns est plus intéressant. Wink


RE: [Conception] Votre technique de conception de BDD en cas d'héritage - Hideaki - 05-10-2011

Autant pour moi, j'avais mal lu ^^
La 3ème solution, je l'utiliserais dans le cas où il y a une forte vraisemblance entre les classes, que les classes hérites directement ou successivement, l'avantage de celui-ci est de pouvoir manipuler plus facilement la classe mère dans le cadre d'une liste de bâtiment par exemple, au lieu de chercher dans chaque table les bâtiments sans oublier la facilité de gestion des id.

La 2ème solution, pourrait être utilisé dans le cas où hormis le faite de typer (niveau objet), il n'y a pas de variables communes ou extrêmement peu ( pour simplifier ), mais aussi de pouvoir manipuler spécifiquement un type d'objet.


RE: [Conception] Votre technique de conception de BDD en cas d'héritage - php_addict - 05-10-2011

cela dépend de ce que tu veut faire il n'y a pas de bonne réponse en fait

perso j'utilise (Décomposition ascendante :Une seul table qui regroupe tous les type de bâtiment avec toutes les champs (dont certains non utilisé par certains type) pour la simple et bonne raison que 90% des batiments ont besoin des même champs "caractéristiques", donc dans ce cas c'est très perspicace...


RE: [Conception] Votre technique de conception de BDD en cas d'héritage - srm - 05-10-2011

Pareil que php_addict Smile
Et avec couchdb tu n'as pas ce problème Wink


RE: [Conception] Votre technique de conception de BDD en cas d'héritage - Argorate - 05-10-2011

(05-10-2011, 08:46 PM)oxman a écrit : Pareil que php_addict Smile
Et avec couchdb tu n'as pas ce problème Wink

C'est à dire?


RE: [Conception] Votre technique de conception de BDD en cas d'héritage - Sephi-Chan - 05-10-2011

Dans couchDB, tu n'as pas de tables, la base de données n'est qu'un tableau d'objets JSON. Donc tu mets ce que tu veux dans chacun. Smile


RE: [Conception] Votre technique de conception de BDD en cas d'héritage - srm - 05-10-2011

Par exemple : http://pastie.org/private/bl4jgsbkeyqjgk6ogp8qw


RE: [Conception] Votre technique de conception de BDD en cas d'héritage - Sephi-Chan - 05-10-2011

Ça va lui faire une belle jambe de voir ça. :p