Velocity ou FreeMarker?
Ils ont à peu près la même apparence, même la syntaxe?
Que faut-il utiliser? Ou quand utiliser quoi?
Velocity n'est plus vraiment en développement actif. Freemarker est.
Freemarker est également beaucoup plus flexible, selon mon expérience.
Les objectifs des projets sont différents.
L'objectif de Velocity est de garder les modèles aussi simples que possible, pour aider à maintenir une ségrégation entre la logique et la présentation, de sorte que vous ne glissiez pas sur la pente glissante du collage de code dans les modèles. Parfois, c'est la bonne chose. Bien sûr, être capable de câbler parfois une logique compliquée directement dans des modèles est la bonne chose.
Velocity n'est pas fréquemment révisé, mais cela ne signifie pas qu'il n'est pas en cours de développement actif. La communauté d'utilisateurs est grande, le code est rapide et stable, la syntaxe est fondamentalement fixe. Au cours des dernières années, Freemarker a subi un désabonnement du côté de la syntaxe du modèle et de l'API. Parfois c'est sympa de partir assez bien seul. Encore une fois, cela dépend de ce que vous recherchez.
La documentation de Freemarker est beaucoup plus complète et c'est un logiciel beaucoup plus compliqué.
De nombreux cas d'utilisation de Freemarker se résument à vouloir un workflow de modélisation complexe et à ne pas vouloir d'étape de compilation. Ces dernières années, plutôt que de lutter pour cela avec Java je viens d'utiliser Python ou Ruby à la place.
Utilisez Freemarker si vous pouvez:
Ils essaient de se différencier de temps en temps ( exemple ).
J'ai beaucoup travaillé avec les deux et de mon point de vue, ils sont très similaires. Il y a tellement de fonctionnalités que vous pouvez intégrer dans un langage de modèles, le reste n'est que duveteux.
Il existe deux livres publiés sur Velocity:
et d'autres livres qui ont aussi des chapitres à ce sujet. Donc, à propos de FreeMarker ayant plus ou de meilleurs documents :).