JeuWeb - Crée ton jeu par navigateur
POO, gestion et utilisation - 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 : POO, gestion et utilisation (/showthread.php?tid=2859)

Pages : 1 2 3 4 5 6 7 8 9 10 11


RE: POO, gestion et utilisation - Ter Rowan - 29-11-2010

(29-11-2010, 12:12 PM)Dexyne a écrit : Ok ok, je voulais savoir les variables qui sont dans __construct ( *ici* ) {} et celle en private ont-elles un lien ?
Si non à quoi servent-elles alors ?

elles n'ont aucun lien... si ce n'est lorsque tu fais $this->machin = $truc
$truc est dans ton *ici* et machin est une private

l'objectif du constructeur est de mettre des valeurs dans tes données private (ou protected), le problème majeur c'est qu'il faut les présenter ces données (d'où le *ici*)


(29-11-2010, 12:12 PM)Dexyne a écrit : Aussi pourriez-vous m'expliquer (théoriquement pas par le code) comment fonctionne les patterns en gros, si y'a des schéma c'est mieux, j'ai regarder vite fais mais je comprend pas vraiment le fonctionnement. Faut-il inclure le pattern ? Si oui où ? (dans la class ?)

J'aimerais aussi savoir comment vous organisez vos fichiers parce que perso je sais jamais comment bien les organiser xD.
Je précise que pour le moment je n'utilise pas de MVC (je verrais si ça marche pour retranscrire ^^).

Sinon merci à nouveau des infos et de l'aide Smile.

le pattern n'existe pas en tant que tel, ce n'est pas un morceau de code, c'est justement le "schema" que tu dois suivre dans le code

typiquement le code que t'as proposé christouphe respecte le pattern appelé "factory" (enfin à mon sens mais je ne suis pas ultra à la pointe, moi je fais comme lui en tout cas)

que dit ce pattern ?
ben grosso modo mes 1 2 3 4 du précédent post

le mieux pour cela est de chercher dans les sites (google => design pattern factory) tout est déjà expliqué

a noter les pattern ne dépendent pas du langage mais du type de programmation, les pattern servent en objet (je ne sais pas si il existe leur équivalent pour d'autres méthodes)

typiquement j'ai implémente quelques pattern alors que le tutoriel était en java, donc ne t'arrête pas au langage du tutoriel pour le lire, regarde uniquement l'aspect pédagogique


RE: POO, gestion et utilisation - christouphe - 29-11-2010

Le "lien" qu'elles ont c'est que les variables en paramètres du consctructeur servent à "remplir" les autres (attributs). Pour les pattern, rien ne vaut un cours sur developpez...C'est assez compliqué et sans code...Pour la factory par exemple, c'est une classe abstraite qui a pour valeur de retour de ses méthodes l'objet (liste d'objet pour moi aussi) dont elle dépend, ici unité. Le pattern n'est pas obligatoire, mais il pet être utile dans certains cas.

EDIT: Erff grillaid comme un ***


RE: POO, gestion et utilisation - Dexyne - 29-11-2010

Je sais que le pattern n'est pas un code à proprement parler mais ce que je voulais dire c'était de ne pas me montrer des morceaux de code brutes :p .

Sinon je vais me renseigner dessus, je voulais avoir une première approche ici déjà. N'utilisant pas (encore) les patterns ça veut dire que les $var dans le __construct ( *ici*) {} ne sont pas obligatoires ? (avec le pattern elles le sont ?)


RE: POO, gestion et utilisation - Kihmé - 29-11-2010

Excusez moi, j'aimerai bien revenir sur le Array, ArrayObject.

Quand j'avais utiliser le ArrayObject c'est parce que j'avais l'impression que c'était l'interface qui était la plus proche de ce que pouvait faire les Vectors (collection) de Java. Visiblement à vous lire ce n'était pas utile. Donc vous nous dite qu'il suffit de stocker mes objets dans un simple tableau pour simuler une collection d'objet, j'ai bien compris?


RE: POO, gestion et utilisation - christouphe - 29-11-2010

Dexyne, les paramètre passé au constructeur ne sont utile que si tu en a l'utilité. Il s ne dépendent pas d'un pattern mais de l'usage que tu fait d'un objet. Quelle utilité de construire un objet "vide". Comme si tu créais d'abord les contours d'un vase, et que tu le remplisses après d'argile...


RE: POO, gestion et utilisation - Dexyne - 29-11-2010

Hum mais si je les défini dans le __construct() ? Si je fais par exemple $this->_moral = 100; est-ce correcte ? Devrais-je plutôt faire dans les parenthèses du __construct() ?


RE: POO, gestion et utilisation - christouphe - 29-11-2010

cale dépend si le moral peut être une données extérieure à la classe ou pas...Je sais la réponse ressemble un peu à "A voir en RP" dans les jeux de rôle mais cela dépend surtout comment TOI tu va concevoir ton jeu.


RE: POO, gestion et utilisation - Dexyne - 29-11-2010

Raa je comprend rien XD

Si entre les parenthèses c'est non extérieur à la classe ? Ou à l'intérieur ?
Et je vois pas ce que ça change de toute façon >_< puisque je défini quand même les variables au final.

'Fin bref j'ai rien compris à l'utilité de les mettre ou non entre parenthèses XD.

Mais merci de m'éclairer ^^.


RE: POO, gestion et utilisation - christouphe - 29-11-2010

bon attends on va faire par un parallèle...


function additionne($a,$b) {
return ($a + $b);
}

Dans ce cas, tu donne $a et $b pour qu'il te retourne la somme des deux.


public function __construct() {
$this -> monNom = "tutu"; //valeur par défaut de monNom dans la classe
//là tu n'as pa le choix, l'attribut monNom vaudra toujours tutu dans un objet nouvellement créé
}


public function __construct($nomDeLObjet) {
$this -> monNom = $nomDeLObjet; //dans ce cas, le nom de l'objet, c'est toi qui le donne
}

C'est plus clair ??


RE: POO, gestion et utilisation - Ter Rowan - 29-11-2010

le sujet n'est plus du tout l'accès à la bdd dans ce cas

il faut que tu commences par apprendre le concept d'objet, puis à t'entrainer sur des cas très simples.

Le sujet bdd apportera plus de confusion qu'autre chose