Ok

En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies. Ces derniers assurent le bon fonctionnement de nos services. En savoir plus.

05/12/2004

Smarty : un moteur de template performant

Beaucoup de personnes ont écrit sur le débat faut-il utiliser un moteur de templates ou pas. Dans mon cas il n'y avait aucun doute : les templates sont obligatoire quel que soit la taille du projet. J'en ai utilisé plusieurs et Smarty les surclasse tous. Ces 3 principaux atouts sont dûs à la manière dont il est construit :

  • 1er atout ce sont les templates compilés,
  • 2ème atout son architecture modulaire avec la gestion des filtres,
  • Dernier atout un cache intégré.

Les préfiltres (filtres appelés lors de la compilation des templates) sont très intéressants car il est possible de donner à l'utilisateur une syntaxe simple. Les blogs de BlogSpirit sont constuit pratiquement grâce à ces préfiltres. Ainsi lorsque vous souhaitez manipuler des posts, il vous suffit d'écrire {posts}... {/posts} en spécifiant certains attributs. Vous savez qu'à l'intérieur de ces 2 balises vous manipulez des posts. Suivant certains attributs vous affichez les posts de tel jour, les posts de tel catégorie ... En effet un blog manipule la même entité : le post. Cependant sa représentation est différente suivant que l'on navigue à l'aide d'un calendrier, d'archives ou des posts.
MovableType utilise aussi le concept que j'appelle : “concept de bloc” en attendant de touver le nom correct ;-). Entre 2 balises vous savez que vous manipulez ce type de données et pas autres choses. Néanmoins je pense que MovableType a mal intégré la gestion des boucles et des tests conditionnels. A l'origine je voulais utiliser la syntaxe de MovableType afin d'être compatible mais j'ai changé d'avis lorsque je me suis heurté à des tests conditionnels.
Blogger utilise plus ou moins bien ce concept de bloc. Néanmoins les tests font défaut car il a été construit sur des tags et pas sur des tags se trouvant dans des blocs.
Certaines applications de blogs utilisent Smarty comme bblog. Pourtant le concept de blocs n'est pas utilisé ce qui est dommage.
Le logiciel opensource de blog Wordpress semble intégrer Smarty. Il faudra attendre s'ils utiliseront les possiblités de Smarty pleinement avec les concepts de blocs.
Cette façon d'encapsuler les données permet d'implémenter facilement des plugins sans que les données s'interfèrent entre elles.
Le langage XUL de Mozilla utilise cette encapsulation de manière différente car c'est un format XML : toute balise ouvrante à une balise fermante correspondante. Je pense que cette façon de procéder va se développer de plus en plus. Qu'est ce que vous en pensez ?

Commentaires

Coucou olivier,
excuse moi de venir polluer ta page mais "Ausecours"!!!!! je croyais tomber sur ton blog cinema pourvoir quel serait le prochain film que j'irai voir et je tombe sur ton autre blog où je comprends 1 mot sur 3..;(et je suis de nature optimiste aujourd'hui!!!!)
Bon c'était juste pour te faire un p'tit bonjour!!!!

Écrit par : Marjorie | 01/02/2005

Les commentaires sont fermés.