JeuWeb - Crée ton jeu par navigateur
Créer des classes efficaces ? - 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 : Créer des classes efficaces ? (/showthread.php?tid=829)



Créer des classes efficaces ? - Sephi-Chan - 18-02-2007

Salut à tous,

Je me lance dans l'utilisation de PHP Orienté Objet et je suis donc à la recherche de conseils et d'astuces pour créer des classes efficaces pour mon jeu et je souhaite que ces conseils viennent de concepteurs de jeu par navigateurs (de manière à ce qu'ils soient plus pertinents).

Comment vous y prenez-vous pour réaliser vos classes ?


Sephi-Chan


RE: Créer des classes efficaces ? - pascal - 18-02-2007

alors en vrac:

il y a les classes techniques, ce sont des classes généralistes:
_ classe SQL
_ classe pour gérer les dates, les entrées utilisateurs
_ classe de gestion d'erreur
_ classe de log...

et les classes métier, les classes remplissant une fonction particulière:
_ inscription,
_ gestion d'objets,
_ déplacement sur une carte...

les classes métier sont souvent présentes sous deux formes:
_ classe pour gérer un objet
_ classe pour gérer une liste d'objets

la classe pour gérer les listes permet d'éviter une requête par objet, on y sélectionne les données pour plusieurs objets en une seule requête.

il y a aussi les tests unitaires, via SimpleTest. en gros, on écrit un petit script qui vérifie un ensemble de valeurs sur l'objet, qui vérifie que chaque méthode effectue ce qu'elle a à faire. avec ça :
_ la classe fait le bon boulot dès le début
_ quand on passe à la v2, quand on modifie une classe, si les tests foirent c'est qu'on a introduit un bug... on détecte ces régressions tout de suite avec les tests unitaires.

voilà voilà!

A+

Pascal


RE: Créer des classes efficaces ? - Sephi-Chan - 18-02-2007

Merci pour les infos!

Ca fait beaucoup de classes tout ça oO !?

N'ayant jamais abordé ça jusque la, ça me fait un peu peur...

Je ne comprend par exemple pas pourquoi il faut une classe SQL ? Ni vraiment les autres classes dites généralistes.

Ensuite, les classes de listes d'objets... Je ne cerne pas trop, à quoi pourrait s'apparenter une telle classe ? Quelle genre de méthode possèderait-elle ?


Sephi-Chan


RE: Créer des classes efficaces ? - pascal - 19-02-2007

beaucoup de classes, oui et non.

pour une boutique en ligne de mon cru, par exemple, 31 classes :
_ 4 classes techniques
_ 9 classes métier simples
_ 18 classes métier ( 9 * 2 : simple + liste )

pour les classes de listes, cf : http://www.jeuweb.org/board/showthread.php?tid=1133

pour les classes techniques, ça vient selon les besoins, les pb qui se présentent. la classe SQL sert à encapsuler des trucs sympas, comme par exemple un log des requetes et de ce qu'elles donnent pour du débuggage, et juste une exécution du SQL en production.

voili voilou.

A+

Pascal


RE: Créer des classes efficaces ? - Sephi-Chan - 19-02-2007

Merci pour ce lien qui me permettra de mieux cerner mon problème, et surtout de le résoudre.

Toutefois je me pose encore une question qui à son importance à mes yeux (je n'ai encore aucune expérience en OO) : Qu'est ce que vous ne faites pas en objets ?

Je pense par exemple au système d'inclusion de page, à l'affichage des pages, etc. Vous utilisez bien quelques fonctions en dehors des objets, non ?

Cette question me mène d'ailleurs à la suivante : Utilisez-vous des balises xHTML à l'intérieur de vos objets ?


Sephi-Chan


RE: Créer des classes efficaces ? - LeToto - 19-02-2007

Etant donné que je me lance aussi dans la réécriture de ce que j'ai fais en php5, j'aimerai aussi savoir quelles sont les classes les plus importantes, si vous aviez un exemple de classe que vous utilisez, ça pourrait être instructif.


RE: Créer des classes efficaces ? - Sephi-Chan - 19-02-2007

Il est vrai que le must serait d'avoir des exemples concrets de classes et surtout, un exemple concret mettant de mise en application de ces classes.
Par exemple un script de combat RPG (simplifié bien entendu, je comprendrai que vous vouliez conserver votre gameplay/vos classes), un script d'achat/vente d'objet à un PNJ, ou que sais-je d'autre choses concrètes.


Sephi-Chan, curieux.


RE: Créer des classes efficaces ? - pascal - 19-02-2007

je bosse en ce moment sur un script d'inscription codé en objet, avec tutorial expliquant comment et pourquoi utiliser ceci ou cela. plus d'infos dans la semaine Smile

A+

Pascal


RE: Créer des classes efficaces ? - Sephi-Chan - 19-02-2007

Enjoy Smile. C'est super sympa ce que tu fais Pascaltje (= Pascalr de l'ancien forum ?).


Sephi-Chan