09-06-2009, 11:38 AM
(09-06-2009, 12:09 AM)Allwise a écrit : Par exemple pour ton problème, on peut imaginer 4 fichiers templates :Je suis tout à fait d'accord avec cette manière de ranger ces morceaux de code, et d'ailleurs j'ai orienté beaucoup mon débat sur ce point de vue. (c'est à dire, j'ai un bloc de code et je l'utilise autre part).
- fichier "stats" => Affiche les stats communes aux joueurs et aux npc
- fichier "liste_amis" => Affiche uniquement la liste des amis d'un joueur
- fichier "joueur_stats" => Affiche les stats du joueur, fait appel au fichier stats et au fichier liste_amis
- fichier "pnj_stats" => Affiche les stats du npc, fait uniquement appel au fichier stats,.
Tu as ainsi du code générique pour l'affichage des stats, mais tu es totalement libre d'afficher ce que tu veux pour les pnj et les joueurs.
Mais comme je l'ai dit plus haut, des personnes nous diront toujours que c'est du code en plus et que ça sert à rien et il préfère la premier méthode qui est "j'utilise une seule page avec un if(isJoueur)". Ici l'exemple paraît d'une évidence même qu'on se rend compte à quel point c'est absurde.
Ce genre de cas se retrouve partout et pourtant, dans le monde d'aujourd'hui, on se retrouve beaucoup avec du code blindé de condition pour vérifier des choses absurdes.
Je ne dis pas non à la généricité mais non à la généricité absurde ce n'est pas pareil. :p
(09-06-2009, 11:17 AM)wild-D a écrit : en PPO, l'héritage, c'est quelque part bien fait pour prendre en charge cette problématique. (partager le code "générique/commun" d'un coté, et le code spécifique de l'autre).Pour l'héritage je suis pas tout à fait d'accord, l'héritage c'est un peu le gros piège de généricité si on sait pas s'en servir.
En tout cas ça me rassure de voir que je ne suis pas seul à penser comme ça