JeuWeb - Crée ton jeu par navigateur
fichier function.php trop lourd [résolu] - 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 : fichier function.php trop lourd [résolu] (/showthread.php?tid=1869)

Pages : 1 2 3


RE: fichier function.php trop lourd - Galaan - 11-10-2007

Je pense qu'en POO ton code aurai ressemble plutot a qq chose comme ca :

Code PHP :
<?php 
$armee
= armee::getArmeeInPos($x,$y);//retourne un objet de type armee ou null si aucune armee en $x,$y
if($armee)
{
$armee->lancer_combat();
ajouter_alerte('combat lancé');
}

Galaan


RE: fichier function.php trop lourd - exopi - 11-10-2007

ah oui, je vois ce que tu veux dire, c'est géré en plus en interne dans les classes... ouais c'est mieux mais beaucoup plus compliqué.

Mais on en revient au sujet, est-il possible de creer une sorte de fichier php pré-chargé qui serais defini comme des fonctions de base supplémentaires ?


RE: fichier function.php trop lourd - Sephi-Chan - 11-10-2007

Je ne crois pas que ce soit possible.


RE: fichier function.php trop lourd - Galaan - 11-10-2007

Je ne crois pas non plus.

Mais par contre au vu de ce que tu nous as montre de ton code, je suis pratiquement sur que tu pourrais regrouper tes fonctions en "famille" et en faire des classes qui dans un premier temps te servirais de bibliotheque de fonctions. Ensuite, petit a petit, tu pourrais les modifier pour qu'elles ressemble de plus en plus a de vrais objets.

Cela te permettrais de fragmenter et de reorganiser ton code sans avoir a tout reecrire.

Galaan


RE: fichier function.php trop lourd - Sephi-Chan - 11-10-2007

Galaan, tu veux pas m'apprendre à POOer un peu via Hotmail ? Confusediffle:


Sephi-Chan


RE: fichier function.php trop lourd - exopi - 11-10-2007

Citation :Mais par contre au vu de ce que tu nous as montre de ton code, je suis pratiquement sur que tu pourrais regrouper tes fonctions en "famille" et en faire des classes qui dans un premier temps te servirais de bibliotheque de fonctions. Ensuite, petit a petit, tu pourrais les modifier pour qu'elles ressemble de plus en plus a de vrais objets.
Oui, c'est peu etre ce qu'il semle le mieux : par exemple, j'insere dans un dossier function/ les groupements :
function_marche.php
function_combat.php
etc

Mais je penses que fragmenter les funcitons en fichiers dans le dossier function/ et sur chaque page inclure uniquement les fonctions nessecaires serait plus utile ( et au pire pour lire corectement le dossier function je fabriquer facliement en blitzbasic un petit éditeur de texte avec les carac dont j'ai besoin ( coloration syntaxique, les "tab" automatiques lors de retour a la ligne,etc ) et au moment de la sauvegarde, le programme se charge de séparer le code et d'enregistrer aux bon endroits


et dans le fihier general function.php je met une seul et unique fonction :

function inclure($function){
include 'function/'.$function.'.php';
}


et au debut de chaque page, je mettrais

inclure('is_marche');
inclure('is_armee');
etc



ca pourrais être une bonne idée ?


RE: fichier function.php trop lourd - Galaan - 11-10-2007

Sephi-chan: je suis pas sur d'etre la bonne personne mais si tu as des questions je peux toujours essayer d'y repondre.

exopi: Je reviens a la charge avec mes classes.
L'avantage des classe en php est que tu peux utiliser "__autoload"
Code PHP :
<?php 
function __autoload($class_name) {
require_once(
'classes/' . $class_name . '.php' );
}
(J'ai trouver ca sur un vieux post de TourDeJeu)

Doc sur cette fonction.

Ca te permet d'eviter tous les include inutiles.

Galaan


RE: fichier function.php trop lourd - exopi - 11-10-2007

ah oui je vois ! Dés que un apel de fonction est lancé, si la fonction n'est pas trouvé, alors il va la chercher tout seul dans le dossier !

si c'est ca c'est tout simplement merveilleux, je vais pouvoir separer mes functions en fichier dans un dossier sans faire plein d'include inutile ^^ ?


RE: fichier function.php trop lourd - Galaan - 11-10-2007

Sauf que ca marche pour des classes...

A chaque fois que tu fais :

$monObjet = new Objet();

si il ne trouve pas la class Objet, il executera :

require_once( 'classes/Objet.php' );

(ca marche peut-etre pour les fonctions static mais je n'ai jamais essaye)

Galaan


RE: fichier function.php trop lourd - exopi - 11-10-2007

ok merci bien je vais partir sur cette voie la, ca rendra le jeu beacoup plus rapide Smile