Page 1 sur 2

Templates : c'est vraiment bien ?

Posté : 07 févr. 2007, 20:36
par Rossio
Tout le monde en parle des templates mais je n'arrive pas à trouver un regard vraiment objectif sur le sujet.

J'ai l'impression qu'avec une très bonne rigueur au niveau de la programmation on peut aussi être très performant sans utiliser les templates. La création de fonctions, l'utilisation des feuilles de style, ...

Quel est votre opinion sur les templates ?

Merci

Posté : 08 févr. 2007, 00:00
par momox
En fait, les templates permettent de séparer l'application de l'apparence.
C'est a dire que au lieu d'avoir un code html truffé de blocs php <?php ?> tu vas avoir un code php qui va appeller un script qui manipulera l'apparence pour donner le rendu final, ce qui sera beaucoup plus pratique.
Enfin bon, ce n'est que mon avis :)
Après aussi, il faut voir la taille du projet...

Posté : 08 févr. 2007, 00:03
par lord.anonymous
Qu'est ce que sont les templates exactement?

Posté : 08 févr. 2007, 00:05
par momox
En fait, les templates, c'est un concept.
Dans un dossier, tu vas mettre des modeles html, que tu manipuleras a l'aide d'un script php, appellé a partir de ton application php.

Posté : 08 févr. 2007, 00:29
par lord.anonymous
En fait, les templates, c'est un concept.
Dans un dossier, tu vas mettre des modeles html, que tu manipuleras a l'aide d'un script php, appellé a partir de ton application php.
Il me faudrait un exemple court pour bien comprendre le principe, si quelqu'un veut bien se dévouer...

Posté : 08 févr. 2007, 00:47
par momox

Posté : 08 févr. 2007, 22:07
par rossio
Je pensais qu'il y aurait plus de débat autour de cette technique de programmation ... Vous par exemple, utilisez-vous les templates ?

On dit que ça ralentit le chargement des pages ?

Posté : 08 févr. 2007, 23:33
par lord.anonymous
Apparemment si j'ai bien compris il faut un logiciel en plus pour faire tourner ce système?

Posté : 09 févr. 2007, 00:01
par Genova
Les templates sont un formidables outils a utiliser pour plusieurs raisons :
1) Parce que ça permet de séparer totalement le code PHP du code HTML
2) Parce qu'un graphiste pourra ainsi retoucher le code HTML sans se perdre dans votre fouilli PHP
3) Parce que votre code sera ainsi beaucoup plus lisible
4) Parce que vous pourrez ainsi donner plusieurs thèmes facilement à votre site web

Code : Tout sélectionner

On dit que ça ralentit le chargement des pages ?
Ca ralenti forcément, puisque le code PHP généré par le template est du code générique, donc que vous auriez pu optimiser en temps normal. Mais la plupart des templates digne de ce nom permettent une mise en cache du code PHP, donc la phase "compilation" que certains trouvent assez lourde est évitée (phpBB2 n'intègre pas de cache par défaut pour information, cependant phpBB3 remédie au problème).

Maintenant les templates offrent tellement de facilité de programmation que ce serait dommage de passer à côté pour un soit disant souvis de performance (le gain se comptera en millisecondes ..). Les causes de ralentissement d'un site sont très souvent ... les requêtes SQL.

Posté : 09 févr. 2007, 11:14
par s3b54sk8
Apparemment si j'ai bien compris il faut un logiciel en plus pour faire tourner ce système?
Il ne faut pas de logiciel en plus. Il faut tout simplement un fichier en plus qui contient la classe template que tu souhaites utiliser. :wink:

J'utilise de plus en plus les templates pour les raisons évoquées par Genova. De plus pour les mises à jour des sites comme l'ajout d'une fonctionnalité ou refonte complet du design, on peut faire des gains de temps assez conséquents je trouve.

Posté : 09 févr. 2007, 12:08
par lord.anonymous
Donc au final, ça fait 3 parties de code à gérer. Le PHP, le HTML et le CSS, c'est ça?
Ca évite juste l'inclusion de HTML dans du code PHP alors.

Faudra que je me documente là dessus.

Posté : 09 févr. 2007, 17:59
par Genova
Si tu veux j'ai écrit un tutoriel sur le système de template de phpBB, jettes y un coup d'oeil ça pourra peut être t'aider à cerner l'intérêt général à travers son utilisation.

Posté : 09 févr. 2007, 18:18
par lord.anonymous
Très intéressant, merci beaucoup. J'essaye ça dès que j'ai le temps.

Posté : 09 févr. 2007, 22:34
par naholyr
[quote="Genova"]

Code : Tout sélectionner

On dit que ça ralentit le chargement des pages ?
Ca ralenti forcément, puisque le code PHP généré par le template est du code générique, donc que vous auriez pu optimiser en temps normal.[/code]
Pas forcément, je milite pour les templates PHP moi ;)
On peut très bien développer ses templates avec un simple script PHP, qui se contente d'utiliser les formules prédéfinies suivantes :
<?php echo $variable; ?>
<?php foreach ($tableau as $valeur): ?> ... <?php endforeach; ?>
<?php if ($condition): ?> ... <?php else: ?> ... <?php endif; ?>

PHP utilisé avec des bonnes pratiques, et un include suffit en guise de templates ;)
C'est le choix de Joomla par exemple, ainsi que de dotClear.

Posté : 10 févr. 2007, 13:45
par rossio
Connaissez-vous un système de templates assez simple avec cache ? Que recommandez-vous ?

Merci