Poo MVC, demande de conseils à cause "complexification" des vues

Résolu/Fermé
ryko1820 Messages postés 1677 Date d'inscription dimanche 28 avril 2013 Statut Membre Dernière intervention 15 août 2021 - Modifié par ryko1820 le 22/01/2014 à 10:07
ryko1820 Messages postés 1677 Date d'inscription dimanche 28 avril 2013 Statut Membre Dernière intervention 15 août 2021 - 23 janv. 2014 à 15:27
Bonjour,

Je réalise actuellement une petite web application en PHP OO sur la base d'un framework MVC "fait maison" mais plutôt simple et que je maîtrise suffisamment (je crois).

Mon problème réside surtout au niveau des vues, qui deviennent de plus en plus complexe et difficile à gérer / maintenir :
De plus en plus d'affichage conditionnel et de PHP (foreach, if count, etc ...) viennent les "polluer" ...

Quel est la bonne pratique répandue pour éviter ce genre de problème certainement courant ? Mes recherches ne m'ont pas trop ramenées de réponses pertinentes alors si vous avez des avis, des expériences personnelles sur le sujet, je suis preneur.



You may stop me but you can't stop us all ;-)

2 réponses

ryko1820 Messages postés 1677 Date d'inscription dimanche 28 avril 2013 Statut Membre Dernière intervention 15 août 2021 276
22 janv. 2014 à 12:12
il faut obligatoirement passer par un moteur de templates ?
0
ryko1820 Messages postés 1677 Date d'inscription dimanche 28 avril 2013 Statut Membre Dernière intervention 15 août 2021 276
23 janv. 2014 à 15:27
Bon finalement après avoir essayé quelques frameworks (sympa mais un peu lourds) je me suis mis à angular.js. Mes vues sont super clean maintenant (De loin, on dirait du pur html), à peine si on voit les balises et n'importe qui devrait pouvoir facilement intervenir dessus sans trop de difficultés. Je crois que c'est une alternative aux moteurs de template, des plus performante.

Nouveau problème, maintenant c'est pour transmettre les données entre mon controleur PHP et celui d'angular. (jusqu'a 10000 caractères).

J'ai essayé quelques trucs :

1/ Balise <script></script> dans la vue avec initialisation d'une variable JS contenant les datas que je passais avant en tableau PHP au format JSON.

Ca marche mais bon ... C'est pas super propre (?)


2/ Inclusion d'un script JS appelant en fait un xxxx.js.php contenant une entete de type Header("content-type: application/javascript");

Ca serait plus propre mais mes variables de vues sont pas dans le scope de ce script .js.php. Je pourrais les lui passer en get lors de son appel, mais la solution perdrait alors un peu de son intérêt :-) (ou alors faut que je trouve comment modifier le fonctionnement de ce mini framework).


3/ Je pense que je vais m'orienter vers cette solution : appel ajax du controleur lors de l'ouverture de la vue. Il y a des informations confidentielles (clef perso de l'API du web service) qui font que je ne peux déléguer totalement au JS l'appel, donc mon controleur sert forcement d'intermédiaire entre mes services JSON et ma vue, pour ça que je rechignais un peu a utiliser JS, je verrais bien pour les perf.

0