IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Affichage des résultats du sondage: Quel système de template utilisez/utiliseriez - vous ?

Votants
147. Vous ne pouvez pas participer à ce sondage.
  • PHPLib

    42 28,57%
  • VTemplate

    5 3,40%
  • Smarty

    81 55,10%
  • ModeliXe

    10 6,80%
  • PowerTemplate

    1 0,68%
  • PHPTemplate

    5 3,40%
  • Xtemplates

    2 1,36%
  • EcTemplate

    0 0%
  • UltraTemplate

    0 0%
  • Itemplate

    0 0%
  • Quick Template

    1 0,68%
  • YATS

    0 0%
Bibliothèques et frameworks PHP Discussion :

[Templates] Quel système utilisez-vous ? Pourquoi ?


Sujet :

Bibliothèques et frameworks PHP

  1. #101
    Membre expérimenté
    Avatar de fabszn
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2002
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2002
    Messages : 974
    Points : 1 638
    Points
    1 638
    Par défaut
    Tout d'abord merci pour ta réponse naholyr
    Elle me donne un bon apercu des templates..

    Je comprend mieux à quoi cela sert!

    Est ce que tu pourrais rentrer dans les détails techniques..
    C'est a dire :

    Est ce que le moteur de template utilise un fichier de config pour faire le mapping entre le modèle et les données?
    Quand tu parles de pseudo-language, cela correspond à un language mis en place entre le développeur et le designer.

    Plus précisément , se sont les variables que le designer devra placer dans le modele et que le développeur devra initialiser correctement ....


    Je reprend ton exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    <html> 
    ... 
    <body> 
    <h1>ICI MON TITRE</h1> 
    <p>ICI MON TEXTE</p> 
    </body> 
    </html>
    ICI MON TITRE et ICI MON TEXTE sont deux variables (issue du pseudo-language) et qui sont reconnues par le moteur de template. Lorsque le moteur de template rencontre ces deux variables, il sait retrouver la bonne variable correctement initialisée par le développeur et fait le mapping dans la page à destination du browser

    Aussi en tout en écrivant je me rend compte que c'est comme cela que sont traité les smileys?

    Est ce que je fais fausse route dans mon raisonnement?

    Merci d'avance,

    @+

    Fabszn
    @+

    Fabszn
    Twitter : @fsznajderman

    N'oubliez pas le bouton
    Comment bien poser ses questions sur le forum


  2. #102
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 89
    Points : 114
    Points
    114
    Par défaut
    Citation Envoyé par fabszn
    Est ce que le moteur de template utilise un fichier de config pour faire le mapping entre le modèle et les données?
    En général non, il a juste besoin du fichier modèle, et de méthodes pour injecter les bonnes valeurs dans ce fichier. Mais tout dépend de comment a été développé ce moteur.

    Quand tu parles de pseudo-language, cela correspond à un language mis en place entre le développeur et le designer.
    Il est généralement imposé par le moteur. En général c'est {nom} pour les variables, et des trucs genre <!-- BEGIN: nom --> ... <!-- END: nom --> (ou {block:nom}...{end:block} chez Temphplate) pour les blocs (les blocs permettent de répéter des zones du modèle).

    Plus précisément , se sont les variables que le designer devra placer dans le modele et que le développeur devra initialiser correctement ....
    [...]
    ICI MON TITRE et ICI MON TEXTE sont deux variables (issue du pseudo-language) et qui sont reconnues par le moteur de template. Lorsque le moteur de template rencontre ces deux variables, il sait retrouver la bonne variable correctement initialisée par le développeur et fait le mapping dans la page à destination du browser

    Aussi en tout en écrivant je me rend compte que c'est comme cela que sont traité les smileys?
    Tu as tout compris
    Basiquement, c'est du str_replace (avec quelques éléments en plus).

  3. #103
    Membre expérimenté
    Avatar de fabszn
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2002
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2002
    Messages : 974
    Points : 1 638
    Points
    1 638
    Par défaut
    Bonjour,

    Merci pour ton aide!

    Je suis en train de faire mon site web,

    Je vais essayé d'utiliser des Templates pour mettre en pratique...

    @+

    Fabszn

    un javaiste se mettant au PHP...
    @+

    Fabszn
    Twitter : @fsznajderman

    N'oubliez pas le bouton
    Comment bien poser ses questions sur le forum


  4. #104
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 89
    Points : 114
    Points
    114
    Par défaut
    Pour revenir à mon précédent commentaire, concernant la complexité inutile de certains moteurs, voici un article (l'auteur a l'air paradoxalement d'apprécier smarty, alors qu'au final il le démontre inutile) très intéressant: http://www.massassi.com/php/articles/template_engines/

    Si on veut le moteur de templates le plus rapide du moment, il n'y a pas à rechigner, c'est php

    Syntaxe du modèle:

    Insertion d'une variables <?=$variable?>

    Bloc: <?php foreach ($variables as $variable): ?> ... <?php endforeach; ?>
    Ou: <?php foreach ($variables as $variable) { ?> ... <?php } ?>

    Conditions: <?php if (condition): ?> ... <?php endif; ?>
    Ou: <?php if (condition) { ?> ... <?php } ?>

    etc...
    La syntaxe n'est finalement pas plus complexe que celle de la plupart des moteurs de templates, un peu plus lourde c'est vrai, mais comme le dit l'auteur:
    In fact, PHP code is just as simple (if not more so) as the syntax of the more advanced template engines (such as Smarty). Also, you can use PHP short-hand like this: <?=$var;?>. Honestly, is that any more complex than {$var}? Sure, it's a few characters shorter, but if you can get used to it, you get all the power of PHP without all the overhead of parsing a template file.

  5. #105
    Membre expérimenté
    Avatar de fabszn
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2002
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2002
    Messages : 974
    Points : 1 638
    Points
    1 638
    Par défaut
    Merci pour cet article!!

    @+

    fabszn

    un javaiste se mettant au PHP....
    @+

    Fabszn
    Twitter : @fsznajderman

    N'oubliez pas le bouton
    Comment bien poser ses questions sur le forum


  6. #106
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 15
    Points : 17
    Points
    17
    Par défaut
    salut naholyr,

    pourrais-tu me donner plus dinfos sur le moteur de template de PHP
    Si on veut le moteur de templates le plus rapide du moment, il n'y a pas à rechigner, c'est php Wink
    Ca m'intéresse, si tu as des liens de préférence en français mais aussi en anglais sinon

  7. #107
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 89
    Points : 114
    Points
    114
    Par défaut
    PHP est un moteur de templates à la base, c'est tout. Il s'intégre dans le modèle HTML avec les balises <? ... ?>, possède l'insertion de variables, les structures de blocs, les conditionnelles, et d'autres trucs bien plus avancés.

    Le lien ci-dessus explique tout ça. Et c'est vrai que quand on y refléchit un peu, il n'y a pas besoin d'un gros moteur de templates pour avoir la séparation des logiques, et il ne faut pas confondre "séparer la logique de présentation de la logique métier" et "séparer le code PHP du code HTML".

    Avec quelques règles simples (on fait toujours une convention de codage dans les projets, ce n'est rien de plus), on peut arriver à des résultats:
    - aussi propres et faciles à maintenir qu'en utilisant les templates.
    - aussi rapide que sans l'utilisation d'une surcouche à php.

  8. #108
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 89
    Points : 114
    Points
    114
    Par défaut
    Citation Envoyé par loufoque
    disposer les éléments de l'interface.
    ça fait un peu partie de la présentation ça quand-même

  9. #109
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 15
    Points : 17
    Points
    17
    Par défaut
    merci pour ces infos

    mais si le moteur de modèle de PHP est si simple et si puissant (je veux bien le croire) pkoi n'est-il pas reconnu ? Il gagnerait sûremment à être médiatisé, mais dans tel cas, quel est donc l'intérêt des solutions template alors?

  10. #110
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 89
    Points : 114
    Points
    114
    Par défaut
    Personne n'a dit que PHP avait un moteur de modèles integrés, l'auteur rappelle simplement que PHP EST un moteur de modèle lui-même. Ce qu'il pointe du doigt très efficacement d'ailleurs.

    Pourquoi utilise-t-on des moteurs de templates ?
    - Parce que sous Perl (et Python si on ne l'utilise pas avec Zope) ce sont des passages obligés si on veut un code propre, car ils ne s'intègrent pas du tout au code HTML. On doit forcément passer par des print. Là les templates sont vitales.
    - Parce qu'on aime bien développer des trucs gros et lourds.
    - Parce que {var} c'est plus rapide que <?=$var;?>, et que ça peut faire la différence. Encore que la plupart des designers bossant sous dreamweaver, il intègre très bien du php (toutes petites portions de code) dans les pages. Il suffirait de s'entendre sur les noms de variables (ce qu'on doit faire avec les autres systèmes) et leur structure (ce qu'on doit faire avec "la plupart" des autres systèmes, ce que je regrette).
    - Parce que ça permet d'ajouter des "commandes", des instructions plus automatisées. Par exemple le mode "page par page" en quelques instructions chez TinyButStrong (dommage qu'il n'y ait pas l'intégration automatique du "LIMIT n,p") ou les "balises amies", etc...

    Il n'y a pas que du mauvais, mais il faut bien avouer que si on a:
    - un modèle créé par un designer, avec des bouts de php (foreach, while, fonctions prédéfinies, if, etc...).
    - un script de traitement des données.
    Le développeur saura créer la couche de fusion données/présentation en changeant simplement les noms de variables pour qu'ils correspondent à ceux du modèle, ce qui n'est finalement que l'objectif du moteur proposé par l'auteur sus-cité.

    Mais je le répète, on voit bien dans le dernier point (celui des instructions automatisées) que certains moteurs tirent leur épingle du jeu en proposant des structures et un façonnage des modèles que PHP ne peut pas proposer. Là il y a un vrai intérêt.

  11. #111
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 15
    Points : 17
    Points
    17
    Par défaut
    Personne n'a dit que PHP avait un moteur de modèles integrés
    Non c'est pas ce que j'ai voulu dire j'ai du mal m'exprimé. j'ai bien compris que PHP avait les moyens d'être un moteur de modèle

    Il est vrai que l'on aime bien faire des trucs bourré d'inutilité et super lourd

  12. #112
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    ça y est, presque un mois que j'utilise le template de phplib. et ça simplifie le code:
    - fichiers modeles *.tpl en html
    - PHP qui va chercher les infos
    - PHP qui remplace les infos

    ce qui manque à mon avis, c'est des outils pour le remplacement des infos.
    je m'en suis rendu compte pour un formulaire:
    25 champs ( d'où 25 {valeurs_par_defauts}) + 15~20 messages d'erreur possibles ( d'ou 15~20 {message_d_erreur} )

    faire le code sur un exemplede deux lignes, facile; sur 40~50 {variables} à remplacer, un peu plus galère: on risque d'en oublier, et faire 50 copier/coller, c'est pas une vie.

    j'ai fait un petit script qui renvoie grosso modo les variables et les boucles d'un fichier mais je trouve pas ça suffisant...

    y a-t-il des outils facilitant le parsing des fichiers par le codeur?

    A+

    Pascal
    Was I asleep?

  13. #113
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Et bien moi j'ai assez vite laché le PHPLIB pour un bon petit Smarty.
    Pourquoi ?

    Je me suis rendu compte que les possibilités de PHPLIB étaient assez vite dépassées si on veux faire du 100% dynamique.. j'ai regretté mon choix assez vite.

    Avec Smarty j'aime bien la possibilité d'intégrer du code logique dans l'html via les if / else.

    Et les designers avec qui il m'arrive de bosser se prêtent au jeux de créer des fonctions logiques dans leurs templates alors :-)

    Voilà mon avis.
    Mickael.

  14. #114
    Membre éclairé
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 764
    Points
    764
    Par défaut
    C'est justement ce que je déteste dans Smarty : tu débarques finalement avec un autre langage, presque aussi complexe que PHP... et tu y mets des tonnes de fonctions, conditions, etc etc.
    Au final le soit disant "template" est aussi compliqué qu'un code PHP bien crade.

    Il s'agit évidement de cas extrème, on peut faire des trucs propres avec Smarty... tout comme on peut très bien séparer la présentation directement avec PHP, sans avoir recourt à une uzine à gaz.
    Google is watching you !

  15. #115
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 15
    Points : 17
    Points
    17
    Par défaut
    presque aussi complexe que PHP
    La syntaxe seulement

    phpnux : Que de point commun que nous avons ! Moi aussi j'aime PHP et Linux et je m'appelle Mickaël (lol)

  16. #116
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Kioob
    C'est justement ce que je déteste dans Smarty : tu débarques finalement avec un autre langage, presque aussi complexe que PHP... et tu y mets des tonnes de fonctions, conditions, etc etc.
    Au final le soit disant "template" est aussi compliqué qu'un code PHP bien crade.

    Il s'agit évidement de cas extrème, on peut faire des trucs propres avec Smarty... tout comme on peut très bien séparer la présentation directement avec PHP, sans avoir recourt à une uzine à gaz.
    Oui, je suis d'accord avec toi, faut juste savoir se limiter avec les fonctions de smarty et les utiliser un minimum


    Bloodshed : ;-)

  17. #117
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2004
    Messages : 80
    Points : 59
    Points
    59
    Par défaut
    Bonjour,

    moi, j'utilise mon moteur perso que vient de terminer, il marche parfaittement.


    Il gère:

    - Les blocks imbriqués
    - les conditions IF ; ELSE ; ELSEIF ; ENDIF
    - L'inclusion, d'autres fichiers dans une page


    je le metterai sur mon site plus tard avec un license GPL

  18. #118
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 89
    Points : 114
    Points
    114
    Par défaut
    Citation Envoyé par SuperPat
    Bonjour,

    moi, j'utilise mon moteur perso que vient de terminer, il marche parfaittement.


    Il gère:

    - Les blocks imbriqués
    - les conditions IF ; ELSE ; ELSEIF ; ENDIF
    - L'inclusion, d'autres fichiers dans une page


    je le metterai sur mon site plus tard avec un license GPL
    Un conseil: arrête là le développement, contente-toi du débuggage. Personnellement avec Temphplate je me retrouve aujourd'hui avec une grosse uzinagaz très loin de l'objectif premier :'(

  19. #119
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 12
    Points : 13
    Points
    13
    Par défaut template VS xml
    bonjour,

    certains (anciens) posts demandaient pourquoi utiliser les templates plutôt que xml+xslt? Donc je profite de ce thread pour reposer cette question?
    Alors des avis?
    merci

  20. #120
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 89
    Points : 114
    Points
    114
    Par défaut
    Parce que xml+xslt c'est une syntaxe plus complexe, donc moins lisible, donc inutilisable pour les graphistes qui n'ont pas forcément un diplome de traducteur universel ni même de formation de développeur.
    Parce qu'il n'y a pas d'éditeurs wysiwyg (genre dreamweaver, imageready, etc...) qui permettent de sortir du xslt.
    Parce qu'il y a encore peu d'hébergeurs qui proposent un sablotron (ou autre) coté serveur, et trop peu de clients qui en disposent.

    En gros, tout simplement parce que c'est beaucoup trop éloigné du cycle de production habituel, et que changer sa façon de travailler n'est valable que si le gain est vraiment sensible, ce qui n'est pas le cas quand on compare xml+xslt par rapport à data(sql,xml,etc...)+templates. Le point le plus noir selon moi étant la syntaxe des xslt qui en font un truc aussi lisible que du perl, et on connait les possibilités de maintenance d'un programme perl "basique" (c'est quasiment impossible à relire).

Discussions similaires

  1. Quel EDI utilisez-vous en 2012 pour le développement Web ? Pourquoi ?
    Par Community Management dans le forum Outils
    Réponses: 69
    Dernier message: 31/08/2016, 10h12
  2. Quels Frameworks utilisez-vous ? et pourquoi ?
    Par snipes dans le forum Android
    Réponses: 5
    Dernier message: 22/02/2013, 15h03
  3. Quel outil de supervision système utilisez-vous ?
    Par cyberzoide dans le forum Linux
    Réponses: 0
    Dernier message: 08/02/2013, 11h09
  4. Réponses: 8
    Dernier message: 10/11/2006, 19h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo