JeuWeb - Crée ton jeu par navigateur
Comment mettre en place une architecture MVC ? - 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 : Comment mettre en place une architecture MVC ? (/showthread.php?tid=1227)

Pages : 1 2 3 4 5 6


RE: Comment mettre en place une architecture MVC ? - Studio Gamboo - 31-05-2008

Ah je procède un peu différent (notamment pour les récupération de variables, c'est mon .htaccess qui travaille un peu plus, et la vérification de méthode).
Mais je me demande, à quoi te servent tes méthodes before et after filter concrètement ?

EDIT :
Voici ma petit version de mon implémentation MVC :
Code PHP :
<?
// --------------------------------------------------------------
public static function render()
// --------------------------------------------------------------
{
if(empty(
self::$_core)) self::$_core = new Core();
if(
self::$_core->config['base_maj']) { include(self::$_core->config['base_path']."app/views/maj.php"); exit(); }
else
{
ob_start("ob_gzhandler");

if(!empty(
$_GET['controller']) && file_exists(self::$_core->config['base_path']."app/controllers/".$_GET['controller'].".php")) self::$_core->controller = $_GET['controller'];
else
self::$_core->controller = self::$_core->config['base_route'];

include_once(
self::$_core->config['base_path']."app/controllers/".self::$_core->controller.".php");
self::$_core->controller = new self::$_core->controller();

if(!empty(
$_GET['method']) && method_exists(self::$_core->controller,$_GET['method'])) self::$_core->controller->$_GET['method']();
else
self::$_core->controller->index();

unset(
self::$_core->controller);

ob_end_flush();
}
}
?>
Et mon index.php (minuscule ^)
Code PHP :
<?
include("system/core/core.php");
Core::render();
?>
N'hésitez pas à me faire remarquer mes erreurs, j'ai opéré quelques simplifications pour le poster ici, j'ai peut-être été trop vite Smile


RE: Comment mettre en place une architecture MVC ? - Studio Gamboo - 31-05-2008

Oui j'avais compris le concept mais j'avais du mal à imaginer concrètement quoi mettre dans ses méthodes. Tu à répondu à ma question Big Grin


RE: Comment mettre en place une architecture MVC ? - Studio Gamboo - 31-05-2008

Non les vues sont gérées par les controlleurs, qui héritent d'une classe controlleur avec tout les méthodes qui vont bien (chargement de helper, choix des vues, transfert des variables vers les vues,etc...)


RE: Comment mettre en place une architecture MVC ? - Ren Nelos - 31-05-2008

Super les gars ! Ca va m'éviter une perte de temps non négligeable.
J'vais voir tout ça et voir à appliquer ça concrètement.

Merci à vous deux en tous cas ! Smile

Cordialement,


RE: Comment mettre en place une architecture MVC ? - Sephi-Chan - 31-05-2008

Ça reste très intéressant de le partager, afin d'y trouver de cibler les points forts et faibles. Merci beaucoup à vous deux pour ça !


RE: Comment mettre en place une architecture MVC ? - Sephi-Chan - 01-06-2008

Merci bien Syndrom, je regarderais tout ça à tête reposée. Smile


RE: Comment mettre en place une architecture MVC ? - Studio Gamboo - 02-06-2008

J'essayerai de poster une version short de mon système également quand j'aurai du temps.
Sinon on ne pourrait pas transférer ça dans la section tuto tant qu'on y est ?


RE: Comment mettre en place une architecture MVC ? - Sephi-Chan - 19-06-2008

Personnellement, je ne m'en suis pas inspiré car je souhaitais garder des choses simples. À trop vouloir automatiser je finis par me perdre. ^^


Sephi-Chan


RE: Comment mettre en place une architecture MVC ? - Studio Gamboo - 21-06-2008

Je suis d'accord avec syndrom Smile
Plus le "système" gère de choses (sans tomber dans l'excès), plus on peut se concentrer sur le code applicatif sans se perdre dans des détails (à mon avis ^^)


RE: Comment mettre en place une architecture MVC ? - Sephi-Chan - 21-06-2008

Je suis d'accord pour dire qu'un système complet est pratique, mais parfois, je pense qu'écrire manuellement quelques include n'est pas une si mauvaise chose. Smile