Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Question sur utilite moteur de template

4 réponses
Avatar
Thierry B.
Bonjour,

je n'ai encore jamais utilisé de systèmes de template, çà fait à peu près 5
jours que je me documente sur le sujet. et je deux ou trois points qui ne
sont encore très clairs :

- quand on utilise les systèmes de cache de smarty, Modelixe ou autre,
qu'est-ce qui est mis en cache, le fichier php résultant du parsage du
template, où bien carrément le fichier html résultant de ce fichier php ?

- j'ai un site qui utilise principalement du html, et une partie en php qui
sert à nos partenaires pour venir consulter soient leur ventes par produits,
soit l'état de leur stock, avec diverses informations. Ces pages ne sont
donc que des tableaux basiques à défilement de page.

Sachant que ces pages sont dynamiques, que la base de donnée est mise à jour
une fois par jour, et que les données affichées pour chaque partenaire sont
différentes, j'ai l'impression que pour ces pages le cache sera inefficace,
puisque chaqe page vue sera toujours la première et seule et unique fois.

Dans ce cas, n'ai-je pas intérêt à opter pour la solution de template la
plus rapide sans utilisation de cache ?

--
Thierry B.
Click below to answer / cliquez ci dessous pour me repondre
http://cerbermail.com/?MQkxTL4vUP

4 réponses

Avatar
Jean-Marc Molina
Bonjour Thierry,

- quand on utilise les systèmes de cache de smarty, Modelixe ou autre,
qu'est-ce qui est mis en cache, le fichier php résultant du parsage du

template, où bien carrément le fichier html résultant de ce fichier php ?

C'est le "fichier html résultant" qui est mis en cache.
Il suffit alors au moteur de recharger ce fichier pour l'afficher. Comme
s'il s'agissait d'une simple fichier HTML, et c'en est un.

Dans ce cas, n'ai-je pas intérêt à opter pour la solution de template la
plus rapide sans utilisation de cache ?


Tout peu se configurer et certaines pages sont dynamiques-dynamiques et
d'autres dynamiques-statiques.
Si une page est mise à jour 1 fois par jour, il vaut mieux utiliser le
cache. Pas besoin de générer une page pour chaque visiteur si le résultat
est toujours le même.
Par exemple quand un article est publié, on le met en cache. Une fois
publié, un article n'est jamais modifié, sauf pour correction par un
administrateur. Mais il faut se mettre du côté lecteur, la page doit
s'afficher rapidement et cette dernière devrait être générée pour chaque
visiteur ? Non puisque l'article est identique pour tous les visiteurs.
Mais cette même page peut avoir des sections "dynamiques", comme afficher la
liste des commentaires pour cet article. L'astuce peut consister à remplacer
cette liste par un simple lien "Lire les commentaires". Cela affiche alors
une page réellement dynamique, un peu comme sur un forum. On peut même
envisager de générer cette page des commentaires dans le cache si elle est
plus souvent consultée que modifiée, CE QUI EST TOUJOURS LE CAS. Beaucoup de
lecture, peu d'écriture.
Donc l'intérêt du cache c'est bien de décharger le serveur web pour lui
éviter de faire toujours la même chose, ce qui est vraiment inutile. C'est
tout l'intérêt des "Application Framework" qui offre des solutions tout en 1
pour optimiser l'architecture d'un site.

Sachant que ces pages sont dynamiques, que la base de donnée est mise à
jour

une fois par jour, et que les données affichées pour chaque partenaire sont
différentes, j'ai l'impression que pour ces pages le cache sera inefficace,
puisque chaqe page vue sera toujours la première et seule et unique fois.

Pour un système de pagination c'est tout autre chose. On peut paramétrer
l'affichage des résultats d'une page, numéro de la page, nombre de
résultats, etc... Un peu à la PhpMyAdmin. Aucun intérêt d'utiliser un cache,
imagines le nombre de pages à mettre en cache pour chaque configuration !

Par contre une solution peut consister à ne présenter que les informations
qui importent réellement aux clients, pas besoin de leur proposer un système
élaborée qui peut les perdre. Une page de statistiques, un résumé, ça dépend
du contexte de ton application.

Après tous ces choix dépendent du moteur que tu choisiras. Pour ma part je
n'utilise pas ces moteurs pour mes projets, aucun intérêt, longue histoire
mais je te conseille de lire nos précédents messages sur ce ng. Pour
résumer, ces moteurs introduisent de nouveaux langages pour gérer les
templates, jusqu'à réinventer la roue alors que PHP sait déjà faire tout ça.
L'essentiel c'est de comprendre qu'un bon moteur de template doit séparer la
LOGIQUE DE PRÉSENTATION de la LOGIQUE DE L'APPLICATION. Et ne surtout par
résumer ça à une séparation de PHP du HTML.

Et PHP sert à quoi ? Á définir la logique d'un
système-application-présentation.

JM

--
Clé AntiPourriel : PASUNPOURRIEL (ne pas retirer)

Avatar
Marouen
"Jean-Marc Molina" wrote in message
news:bol50e$77i$
Bonjour Thierry,

- quand on utilise les systèmes de cache de smarty, Modelixe ou autre,
qu'est-ce qui est mis en cache, le fichier php résultant du parsage du

template, où bien carrément le fichier html résultant de ce fichier php ?

C'est le "fichier html résultant" qui est mis en cache.
Il suffit alors au moteur de recharger ce fichier pour l'afficher. Comme
s'il s'agissait d'une simple fichier HTML, et c'en est un.

Dans ce cas, n'ai-je pas intérêt à opter pour la solution de template la
plus rapide sans utilisation de cache ?


Tout peu se configurer et certaines pages sont dynamiques-dynamiques et
d'autres dynamiques-statiques.
Si une page est mise à jour 1 fois par jour, il vaut mieux utiliser le
cache. Pas besoin de générer une page pour chaque visiteur si le résultat
est toujours le même.
Par exemple quand un article est publié, on le met en cache. Une fois
publié, un article n'est jamais modifié, sauf pour correction par un
administrateur. Mais il faut se mettre du côté lecteur, la page doit
s'afficher rapidement et cette dernière devrait être générée pour chaque
visiteur ? Non puisque l'article est identique pour tous les visiteurs.
Mais cette même page peut avoir des sections "dynamiques", comme afficher
la

liste des commentaires pour cet article. L'astuce peut consister à
remplacer

cette liste par un simple lien "Lire les commentaires". Cela affiche alors
une page réellement dynamique, un peu comme sur un forum. On peut même
envisager de générer cette page des commentaires dans le cache si elle est
plus souvent consultée que modifiée, CE QUI EST TOUJOURS LE CAS. Beaucoup
de

lecture, peu d'écriture.
Donc l'intérêt du cache c'est bien de décharger le serveur web pour lui
éviter de faire toujours la même chose, ce qui est vraiment inutile. C'est
tout l'intérêt des "Application Framework" qui offre des solutions tout en
1

pour optimiser l'architecture d'un site.

Sachant que ces pages sont dynamiques, que la base de donnée est mise à
jour

une fois par jour, et que les données affichées pour chaque partenaire
sont

différentes, j'ai l'impression que pour ces pages le cache sera
inefficace,

puisque chaqe page vue sera toujours la première et seule et unique fois.

Pour un système de pagination c'est tout autre chose. On peut paramétrer
l'affichage des résultats d'une page, numéro de la page, nombre de
résultats, etc... Un peu à la PhpMyAdmin. Aucun intérêt d'utiliser un
cache,

imagines le nombre de pages à mettre en cache pour chaque configuration !

Par contre une solution peut consister à ne présenter que les informations
qui importent réellement aux clients, pas besoin de leur proposer un
système

élaborée qui peut les perdre. Une page de statistiques, un résumé, ça
dépend

du contexte de ton application.

Après tous ces choix dépendent du moteur que tu choisiras. Pour ma part je
n'utilise pas ces moteurs pour mes projets, aucun intérêt, longue histoire
mais je te conseille de lire nos précédents messages sur ce ng. Pour
résumer, ces moteurs introduisent de nouveaux langages pour gérer les
templates, jusqu'à réinventer la roue alors que PHP sait déjà faire tout
ça.

L'essentiel c'est de comprendre qu'un bon moteur de template doit séparer
la

LOGIQUE DE PRÉSENTATION de la LOGIQUE DE L'APPLICATION. Et ne surtout par
résumer ça à une séparation de PHP du HTML.

Et PHP sert à quoi ? Á définir la logique d'un
système-application-présentation.

JM

--
Clé AntiPourriel : PASUNPOURRIEL (ne pas retirer)


Et qu'est ce que vous conseillez vous ?

Marouen


Avatar
Thierry B.
Merci pour ces explications.

Effectivement après moult recherches et lectures, j'ai décidé d'opter pour
un système de template ultra léger en pur PHP, pas de nouveau "méta langage"
à apprendre. J'en ai trouvé deux, SAVANT ( http://phpsavant.com/ ) et
SimpleT ( http://simplet.sourceforge.net/ ). Les deux ont quelque mois, le
premier semble plus sérieux (site, documentation) mais SimpleT d' Harry
Fuecks me tente car il a créé sa classe autour du concept MVC pour
effectivement séparer la logique de présentation de la logique
d'application.

Thierry B.

--
Click below to answer / cliquez ci dessous pour me repondre
http://cerbermail.com/?MQkxTL4vUP

"Jean-Marc Molina" a écrit dans le message
de news:bol50e$77i$

Après tous ces choix dépendent du moteur que tu choisiras. Pour ma part je
n'utilise pas ces moteurs pour mes projets, aucun intérêt, longue histoire
mais je te conseille de lire nos précédents messages sur ce ng. Pour
résumer, ces moteurs introduisent de nouveaux langages pour gérer les
templates, jusqu'à réinventer la roue alors que PHP sait déjà faire tout
ça.

L'essentiel c'est de comprendre qu'un bon moteur de template doit séparer
la

LOGIQUE DE PRÉSENTATION de la LOGIQUE DE L'APPLICATION. Et ne surtout par
résumer ça à une séparation de PHP du HTML.

Et PHP sert à quoi ? Á définir la logique d'un
système-application-présentation.


Avatar
Jean-Marc Molina
Bonjour Thierry,

En effet SimpleT est très intéressant. Ces projets sont nouveaux car cette
idée de simplifier les templates datent d'hier si on peut dire. À croire que
l'on cherche des réponses un peu trop loin parfois. Alors que l'on dispose
d'un langage pareil, déjà, à nos pieds.

JM

--
Clé AntiPourriel : PASUNPOURRIEL (ne pas retirer)