Page 1 sur 1

Critiques sur l'organisation de mon code

Posté : 04 déc. 2013, 11:08
par computarelier
Bonjour à tous,

J'aurai aimé des critiques sur mes habitudes d'organisation du code. J'ai essayé de me mettre au modèle MVC, seul.

En lui-même mon code est visible. Ma question porte essentiellement sur l'architecture de mon projet.

Généralement je fais comme ça (prenons le cas d'un site tout bête avec une page) :

Htaccess 
^/produit/(.*)$ index.php?controlleur=produit&idproduit=$1
Index.php (cumulé au htaccess, ça "route")
if($_GET['controlleur']=='produit')	include 'controlleur/produit.php' ;
//...
include 'controlleur/chargeur_template.php' ;
Controlleur/Produit.php
$ManagerProduit = new ManagerProduit; // fait appel au modèle qui retourne des objets produit
if($_GET['idproduit']==1) $titre = $ManagerProduit->getTitreProduit($_GET['idproduit']);
else $titre = 'titre du produit2 ';
$template = 'produit';
Vue/Produit.php
<h1><?= $titre ;?>< :h1>
Il va sans dire que mon code est un peu plus sécurisé et étoffé ;-)

Est-ce que c'est commun d'organiser son code de cette manière ? Est-ce que je peux continuer dans ce sens ou est-ce que vous me conseillez de m'organiser différemment ?

Merci ! :-)

Re: Critiques sur l'organisation de mon code

Posté : 04 déc. 2013, 14:16
par xTG
Il n'y a pas qu'une façon de faire du MVC, on peut même en faire sans POO donc c'est pour dire.
Ta façon de faire ne me choque aucunement.

Re: Critiques sur l'organisation de mon code

Posté : 04 déc. 2013, 14:24
par computarelier
Merci pour ce (premier) retour !

Re: Critiques sur l'organisation de mon code

Posté : 04 déc. 2013, 22:35
par moogli
+1 xTG

A ceci prêt que j'aurais préféré mettre dans un tableau le nom des contrôleurs (le nom en clef et le chemin pour l'inclusion en valeur), histoire d'avoir un truc un peu plus générique.
exemple
<?php

$controleur = ['produits'=> 'controlleur/produit.php','autre'=>'controlleur/autre.php'];

if(!empty($_GET['controleur']) && isset($controleur[$_GET['contoleur']])){
    include isset($controleur[$_GET['contoleur']]);
}
Attention il faut bien sur y ajouter la couche ACL (avant ou dans les contrôleur spécifique ;) ).

une autre solution serais de gérer dynamiquement la chose.
En poo tu crée une interface qui va servir de gabarit aux contrôleurs, ajoute à cela l'autoload et tu peux fair un mécanisme extension sans devoir connaitre à l'avance le nom des controleurs (bien sur tu auras à respecter une convention pour le nommage des fichier mais c'est généralement le cas lorsque se pose ce type de question :))


enfin bref, comme le dit xTG il n'y a pas qu'une façon de faire un MVC :mrgreen: :mrgreen:

@+

Re: [RESOLU] Critiques sur l'organisation de mon code

Posté : 04 déc. 2013, 22:57
par computarelier
Chouette, "Acl", de nouvelles pistes à creuser...
(car après le bouquin que tu m'as dit de bouquiner et les diagrammes UML dont je rêve tous les soirs, merci l'ambiance :lol: )

Merci & bonne soirée,

Re: [RESOLU] Critiques sur l'organisation de mon code

Posté : 04 déc. 2013, 23:02
par moogli
c'est pas de tout repos la vie de dev (acl, en gros c'est la gestion de droit ;) )


@+