Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 24-10-2008 13:13:04

Vincent
Administrateur
Date d'inscription: 19-09-2008
Messages: 510

L'intérêt d'un moteur de template quand on a déjà MVC

Bonjour,

Je pense avoir compris l'intérêt d'un moteur de template, séparer l'affichage des traitements, mais quel est l'intérêt dans un Zend Framework qui utilise la couche MVC qui sépare l'application en trois parties modèle(traitement)/vue(affichage)/contrôleur(aiguillage).

Par défaut l'affichage est séparé du traitement (avec MVC), pourquoi  se surcharger d'un moteur de template ?

Utilisez-vous le Zend Framework avec un moteur de template? si oui lequel et pourquoi ?


Merci d'avance

Dernière modification par miboo (30-10-2008 16:05:04)


aka miboo

Hors ligne

 

#2 24-10-2008 13:20:00

acharrex
Membre
Lieu: Suisse
Date d'inscription: 27-04-2008
Messages: 135

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Salut,

Un moteur de templates comme Smarty permet de combler les "manques" de Zend_View en évitant de mettre des "<?php echo XXX; ?>" partout dans tes vues. De plus, il ne te permettra pas d'effectuer des traitements qui devraient être fait par le contrôleur ou le modèle. Liberté que Zend_View te laisse.

Pour plus d'infos, tu peux lire l'introduction de cet article : http://zend-framework.developpez.com/se … mplate/#LI

wink

Dernière modification par acharrex (24-10-2008 14:14:41)

Hors ligne

 

#3 24-10-2008 13:33:05

lebilien
Membre
Lieu: avranches
Date d'inscription: 19-06-2007
Messages: 270
Site web

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Mais mais non merci trop de modif a faire sur le projet ( projet finit avec plus 70 000 lignes de code ) donc si on peut eviter de tous refaire pour une seul page avec une seul ligne qui pose probléme lol

Merci


http://www.parkaddict.com Gagner des places dans vos parcs préférés

Hors ligne

 

#4 24-10-2008 13:34:14

Vincent
Administrateur
Date d'inscription: 19-09-2008
Messages: 510

Re: L'intérêt d'un moteur de template quand on a déjà MVC

lebilien a écrit:

Mais mais non merci trop de modif a faire sur le projet ( projet finit avec plus 70 000 lignes de code ) donc si on peut eviter de tous refaire pour une seul page avec une seul ligne qui pose probléme lol

Merci

hein?

acharrex > merci pour ce précieux lien je vais voir ça


aka miboo

Hors ligne

 

#5 24-10-2008 13:44:08

lebilien
Membre
Lieu: avranches
Date d'inscription: 19-06-2007
Messages: 270
Site web

Re: L'intérêt d'un moteur de template quand on a déjà MVC

lol autant pour moi j'ai repondu au mauvais post mdr

bonne journée a tous vivement le week end lol


http://www.parkaddict.com Gagner des places dans vos parcs préférés

Hors ligne

 

#6 24-10-2008 13:45:12

Vincent
Administrateur
Date d'inscription: 19-09-2008
Messages: 510

Re: L'intérêt d'un moteur de template quand on a déjà MVC

lebilien a écrit:

lol autant pour moi j'ai repondu au mauvais post mdr

bonne journée a tous vivement le week end lol

Pas de soucis, bon week end à toi wink


aka miboo

Hors ligne

 

#7 24-10-2008 13:51:10

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Personnellement j'utilise PHPTAL. XML strict, il interdit les erreur de balisage. De plus, il permet de commenter d'une façon un peu originale.

On part du principe que le controlleur indique à la vue que $plop = 'Hello World';

Dans la vue :

Code:

<p tal:content="plop">Ici sera affiché le message de bienvenue</p>

En lisant le code, on sait ce qui doit s'afficher, en exécutant, le contenu de la balise P est remplacé par la valeur de la variable plop


Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#8 24-10-2008 15:30:53

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Moi je préfère les bons vieux helpers.
Je htmlise a coup de $this->div($this->a(url, $this->img(src, alt)))
smile
Le html c'est bien mais c'est chiant. Ma technique permet de ne plus se trompé en oubliant un " ou une fermeture de tag. Ca plante en php alors c'est plus violent et tu le découvre pas quand tu teste ton site sous IE et que ça le fracasse niveau design.

Hors ligne

 

#9 24-10-2008 16:23:17

ichevc02
Membre
Date d'inscription: 25-07-2007
Messages: 127

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Bonjour,

Un des intérêts d'utiliser un moteur de template est de travailler plus facilement avec des "integrateurs".
Des mecs qui savent faire du design et un soupcon de pseudo code (type smarty).

Dernière modification par ichevc02 (24-10-2008 16:25:10)

Hors ligne

 

#10 24-10-2008 17:09:28

Vincent
Administrateur
Date d'inscription: 19-09-2008
Messages: 510

Re: L'intérêt d'un moteur de template quand on a déjà MVC

ichevc02 a écrit:

Bonjour,

Un des intérêts d'utiliser un moteur de template est de travailler plus facilement avec des "integrateurs".
Des mecs qui savent faire du design et un soupcon de pseudo code (type smarty).

Bonjour,

ce n'est pas déjà possible avec le modèle MVC de base ?

Dernière modification par miboo (24-10-2008 17:24:54)


aka miboo

Hors ligne

 

#11 24-10-2008 17:18:36

ichevc02
Membre
Date d'inscription: 25-07-2007
Messages: 127

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Bonjour,

si bien sur, mais ton intégrateur à ses habitudes, s'il a l'habitude de bosser avec smarty ou autre moteur de template, le fais d'en changer risque de le perturber/ ralentir.

Qu'on s'entende bien, Smarty ne fournit pas de MVC, smarty prend en charge uniquement la partie V (Vue) du model MVC.
Il permet :
- de s'assurer de l'independence de la vue (quoique on peut détourner et mettre du code).
- d'introduire un pseudo langage (qui n'est pas du php) permettant un apprentissage plus facile pour un desiner
- gestion des erreurs des vues par les desiners (integrateur).
- de gerer du cache de vue (partiel ou complet).
- de gerer des sorte de helper .

.. j'en oublie surement c'a fait quelques années que je n'ai pas touché a smarty


citation du site smarty :

http://www.smarty.net/whyuse.php

This paradigm serves several purposes:

*) Designers can't break application code. They can mess with the templates all they want, but the code stays intact. The code will be tighter, more secure and easier to maintain.

*) Errors in the templates are confined to the Smartys error handling routines, making them as simple and intuitive as possible for the designer.

*) With presentation on its own layer, designers can modify or completely redesign it from scratch, all without intervention from the programmer.

*) Programmers aren't messing with templates. They can go about maintaining the application code, changing the way content is acquired, making new business rules, etc. without disturbing the presentation layer.

*) Templates are a close representation of what the final output will be, which is an intuitive approach. Designers don't care how the content got to the template. If you have extraneous data in the template such as an SQL statement, this opens the risk of breaking application code by accidental deletion or alteration by the designer.

*) You are not opening your server to the execution of arbitrary PHP code. Smarty has many security features built in so designers won't breach security, whether intentional or accidental. They can only do what they are confined to in the templates.


Certaine de ses possibilité sont apportées par Zend mais pas aussi poussé que Smarty dont c'est l'unique but.

voila

Dernière modification par ichevc02 (24-10-2008 17:19:59)

Hors ligne

 

#12 30-10-2008 16:14:06

Vincent
Administrateur
Date d'inscription: 19-09-2008
Messages: 510

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Merci de vos contributions. En gros ça permet surtout d'éviter l'utilisation de PHP dans les vues.

Pour résumer :

A la base un moteur de template permet de séparer les traitements de l'affichage. Mais l'intérêt d'un moteur de template reste limité dans le Zend Framework puisqu'il est architecturé autour du modèle MVC qui sépare déjà l'application en différentes couches.
On peut retenir qu'un moteur de template dans le ZF c'est :

AVANTAGES
- les traitements dans la partie présentation deviennent difficiles
- pour un intégrateur le pseudo langage d'un moteur de template peut être plus compréhensible que du PHP
- un moteur de template implémente des fonctions de bases qui améliore la productivité
INCONVENIENTS
- un moteur de template ajoute une couche supplémentaire
- un moteur de template peut se révéler compliquer pour un non initié
- un moteur de template nécessite une configuration supplémentaire

Je crois que c'est tout, qu'en pensez-vous ?

D'une manière générale, le ZF est plutôt utilisé avec ou sans moteur de template ?

D'autres retour d'expériences avec les moteurs de templates ?

Dernière modification par miboo (30-10-2008 16:29:49)


aka miboo

Hors ligne

 

#13 30-10-2008 16:31:29

Jean-Marc Rigade
Membre
Lieu: Rennes
Date d'inscription: 25-09-2007
Messages: 314

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Il me semble que depuis que le ZF gère les layout la séparation du code et du design me semble assez bonne.
Donner un layout à un graphiste est réaliste dans la mesure ou les blocs d'affichage sont clairement définis et faciles à placer dans une maquette.

Bien sur en laissant de coté les sites tout en flash et poutres apparentes...

Hors ligne

 

#14 30-10-2008 20:02:21

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Zend_View et Zend_Layout me suffisent, mais je fais le html/css moi même...

Hors ligne

 

#15 30-10-2008 20:09:29

Delprog
Administrateur
Date d'inscription: 29-09-2008
Messages: 670

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Bonsoir,

Les monteurs sont quand même assez intelligents pour comprendre :

Code:

<?php if (condition) : ?>

<?php else: ?>


<?php endif; ?>

Et ce n'est pas beaucoup plus long que d'écrire la syntaxe smarty.

Après c'est toujours un débat sans fin smile

Pour moi les seuls avantages restant lorsqu'on utilise un moteur sont, la gestion du cache (et encore on peut facilement gérer le cache dans Zend) et le côté strict de la vue (certains traitements qui devraient être fait dans un controlleur ou un modèle interdits).

Je trouve que Zend_Layout suffit amplement, même s'il mérite encore d'être amélioré.


A+ benjamin.


http://www.anonymation.com/ - anonymation - Studio de création.
http://code.anonymation.com/ - anonymation - blog - développement et architecture web

Hors ligne

 

#16 30-10-2008 21:13:03

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: L'intérêt d'un moteur de template quand on a déjà MVC

salut à tous
vous pouvez lire ceci http://www.developpez.net/forums/d3223/ … -pourquoi/
qui a largement débattu du sujet pour dire combien il est récurent.

A+JYT

Hors ligne

 

#17 30-10-2008 23:11:42

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Bonjour,

J'utilise smarty parce que j'aime bien la syntaxe, le système de plugins et les filtres...

Je pense aussi que décider d'utiliser ou non un système de templates n'est pas un choix déterminant dans la conception d'une appli... On peut faire beaucoup d'erreur de conception sur une application, par contre, choisir de faire les vues en PHP ou en smarty est assez transparent sur les temps de développement à l'arrivée...

A+, Philippe


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#18 31-10-2008 10:58:42

Vincent
Administrateur
Date d'inscription: 19-09-2008
Messages: 510

Re: L'intérêt d'un moteur de template quand on a déjà MVC

sekaijin a écrit:

salut à tous
vous pouvez lire ceci http://www.developpez.net/forums/d3223/ … -pourquoi/
qui a largement débattu du sujet pour dire combien il est récurent.

A+JYT

J'ai lu ce thread, c'est intéressant mais ça ne répond pas exactement à ma question dans le sens où le débat est orienté sur l'utilisation ou non d'un moteur de template dans une application PHP.
Ici il s'agit plutôt de l'utilisation ou non d'un moteur de template dans un contexte MVC / Zend Framework qui sait déjà gérer l'affichage indépendamment du traitement.



Merci pour vos retours.

J'en conclu que l'utilisation d'un moteur de template est inutile avec une appli ZF, sauf si on tient vraiment à limiter les risques de traitement dans la partie présentation, ou, que cette partie est réalisée par des intégrateurs qui sont ne sont familiariser qu'aux moteurs de template.

Dernière modification par miboo (31-10-2008 10:59:15)


aka miboo

Hors ligne

 

#19 04-11-2008 16:24:10

jylac
Nouveau membre
Lieu: Lyon
Date d'inscription: 31-10-2008
Messages: 4

Re: L'intérêt d'un moteur de template quand on a déjà MVC

miboo a écrit:

J'en conclu que l'utilisation d'un moteur de template est inutile avec une appli ZF

C'est la question que je me pose depuis plus d'un mois ? Sur mon site 4x4rdv.com j'utilise Smarty depuis plus de 4 ans, et ça m'a permis à l'époque ou l'on ne parlait pas de MVC et très peu de POO de séparer la vue du PHP pur.
Et pour moi Smarty et quand même un bel outil, qui permet de travailler proprement, avec toutes les lignes d'assignation des variables puis au lancement de la "vue", d'avoir une fenêtre de debug qui me permet de vérifier que j'envois bien tous à la fenêtre de l'internaute !
Maintenant pour créer de nouveau projet je tests différents MVC. Et quand j'essaye Copix, Symphony qui ont Smarty d'origine et que je vois les discutions sur Z-F avec intégrera, intégrera pas !!! Je me demande bien si je vais le remettre ce moteur de template smile ???
Je pense aussi à la vitesse d'affichage de mes pages, choses qu'on parle rarement ici ? Car à force d'ajouter des couches...

En bref, je crois que je rajouterais Smarty dans mes nouveaux projets quand je pourrais me payer le top des designer, comme ça j'aurais juste à lui faire un accès FTP dans le dossier TPL, et je pourrais dormir tranquille, car il ne pourra pas intégrer du code PHP (car désactivé dans la config smarty), et qu'il aura pas devant les yeux mon fichier config avec les mots de passes et les possibles failles de sécurités que j'ai ajouté aux fils des ans dans mon code ! Je crois que c'est pratique pour ça ?

Hors ligne

 

#20 05-11-2008 15:12:59

Jean-Marc Rigade
Membre
Lieu: Rennes
Date d'inscription: 25-09-2007
Messages: 314

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Mr.MoOx a écrit:

Moi je préfère les bons vieux helpers.
Je htmlise a coup de $this->div($this->a(url, $this->img(src, alt)))
smile
Le html c'est bien mais c'est chiant. Ma technique permet de ne plus se trompé en oubliant un " ou une fermeture de tag. Ca plante en php alors c'est plus violent et tu le découvre pas quand tu teste ton site sous IE et que ça le fracasse niveau design.

quel helper utilises tu pour faire ça (j'avoue je n'ai pas encore lu toute la doc) ?
Ou alors c'est un truc à toi.
Je trouve ça intéressant dans certaines situations.

Hors ligne

 

#21 05-11-2008 15:21:02

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: L'intérêt d'un moteur de template quand on a déjà MVC

Hello,

Cela ne fait pas parti du ZF. Il s'agit à priori d'une application du design pattern Decorator comme le fait Zend_Form.

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#22 05-11-2008 15:23:24

nORKy
Membre
Date d'inscription: 06-03-2008
Messages: 1098

Re: L'intérêt d'un moteur de template quand on a déjà MVC

C'est lui qui les a codé.

Mais tu as quelques helper pou faire des choses plus complexe :
HtmlList
HtmlFlash
HtmlQuicktime

De plus, il y a HtmlElement qui t'aide avec quelques fonctions utiles (en héritant)


----
Gruiiik !

Hors ligne

 

#23 05-11-2008 15:27:09

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: L'intérêt d'un moteur de template quand on a déjà MVC

De plus, il y a HtmlElement qui t'aide avec quelques fonctions utiles (en héritant)

Tout est là je pense smile
Libre à vous de faire mumuse avec des helpers de 3 lignes de codes, ou de faire un système surchargeant Zend_View directement grâce au méthode magique de php...

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages