Re,
Je souhaite juste savoir si justement mon approche personnel n'est pas trop pitoyable
Tu n'auras jamais de moi une réponse aussi sèche, froide et pitoyable lol
Ton approche est celle que tu en fais, démonter qu'elqu'un n'est pas vraiment mon truc.
Ce que je peux tenter c'est expliquer un peu ce système, ce qu'il convient de faire, non de te critiquer.
- M = Méthode (les fonctions générales en gros)
- V = View (Ce que tu as à l'écran et rien d'autre, donc pas de code
- C = Controlleur (dispatch en fonction de test)
Le pattern MVC est... discutable et discuté. Chacun l'envisage selon sa propre utilisation.
En gros, discuter de l'approche serait un brin long lol Disons qu'il faut que tu sépares un max
ce qui est html du php. Un 'tit exemple (idiot)
methode:
<?php
// Les fonctions
$template = Array();
function makePage()
{
switch($page)
{
case "accueil":
$template["title"] = "Page d'accueil";
break;
.
.
.
}
return true;
}
display();
?>
view: Ou comment disposer les éléments suivant un layout
<!-- Ne doit contenir de code (...normalement) -->
<html>
<head>
<!-- Bien que le php soit "interdit" les templates le sont, va savoir... -->
{tpl:title}
</head>
<body>
{tpl:body}
</body>
</html>
Le controller:
<?php
// Il dispatch en fonction d l'url _get etc... Ne fait que ca
$root = $url...
$page = makePage($root);
.
.
.
?>
Comme tu le vois séparer les éléments c'est... outch... Je dirais qu'à un moment ou à un autre
il y a colusion mais le principal est d'essayer et ce le plus possible. Dans mon exemple (idiot)
la séparation se fait mais en biaisant...
Car si on me parle de MVC, je vois à peu près ce que c'est, mais je sais bien que derrière ce mot de
3 lettre se cache quelquechose de complexe que je maitrise pas du tout. Je cherche simplement à
faire le plus simplement possible une séparation PHP/HTML en me passant d'un moteur de template.
Si tu fais du procédural tu dois, à l'instar de Mr Jourdain, faire du MVC. M'est d'avis que tu fractionnes
déja tes fichiers, que tu tentes (presque) de factoriser tes fonctions (j'imagine que c'est pareil pour toi)
... Je dis ca vu que c'est ainsi que je faisais avant de toucher aux objets.
Le MVC n'est pas complex il est "vicieux" lol
Stopher, c'est mon call_user_func('page_'.$page); qui te dérange ?
C'est vrai que ma méthode la aussi est peut être byzar... au lieu d'avoir une page physique par métier ou module si on peut appeler ça comme ça, j'aime bien tout traiter en tant que fonctions...
Libre à toi d'utiliser le procédurale mais les objets sont vraiment inqiqués pour faire cela.
@+
PS: Mes exemples sont foireux, c'était juste essayer de te mettre face au MVC, rien de plus
