Diferenças entre os sistemas de templates HTML

5

Estou vendo o backbone.js e percebi que ele suporta vários sistemas de templates (eles se referem especificamente ao Mustache.js , < href="https://github.com/creationix/haml-js#readme"> Haml-js e Eco , mas eu entendo que pode suportar ainda mais) (como Pure e dust.js )

Por que existem tantos desses? O que faz um melhor ou diferente dos outros? Alguém pode esclarecer quais são seus pontos strongs e fracos?

    
por gbjbaanb 23.08.2012 / 19:12
fonte

3 respostas

8

Este é um link para um artigo do LinkedIn. onde eles detalham sua comparação e apresentam seus resultados, bem como por que eles selecionaram o que fizeram (dust.js). Isso deve lhe dar uma idéia justa sobre as comparações e o que as pessoas mais provavelmente procurarão na modelagem de soluções no lado do cliente e quais são seus pontos strongs / fracos nessas áreas.

    
por 23.08.2012 / 19:18
fonte
0

O PhD já respondeu muito bem os pontos de comparação, por isso vou focar

Why are there so many of these?

Algumas razões:

  • Eles têm uma filosofia diferente sobre o que deveria estar em um modelo. Alguns tentam forçar a regra "sem lógica em um modelo", outros não se importam: por exemplo, o bigode é muito estrito, o sublinhado permite que você use qualquer tipo de javascript no modelo.
  • Eles foram feitos por pessoas diferentes que tinham necessidades diferentes. Alguns queriam um sistema de templates muito genérico implementável em qualquer idioma, outros apenas precisavam de javascript e eram otimizados para isso.
  • Alguns precisavam apenas do modelo para gerar HTML e otimizavam a sintaxe para isso. Outros os tornaram capazes de produzir qualquer conteúdo de texto, mas com uma sintaxe que poderia ser considerada menos confortável.

Tudo se resume à definição de design: "Design é a arte de equilibrar requisitos conflitantes". As pessoas que projetaram o mecanismo de vários modelos tinham prioridades diferentes, por isso produziram designs diferentes.

    
por 13.03.2014 / 23:03
fonte
-1

Atualmente, estou indo para Bigode .

A razão principal é que está disponível em Ruby, JavaScript, Python, Erlang, node.js, PHP, Perl, Objective-C, Java, .NET, Android, C ++, Go, Lua, ooc, ActionScript, ColdFusion , Scala, Clojure, Fantom, CoffeeScript, D, Haskell, XQuery, ASP, Io, Dart e Haxe.

Isso significa que você pode compartilhar seus modelos entre seu JS e qualquer outro idioma de backend que estiver usando, o que é muito útil se você quiser renderizar seu layout no backend e renderizá-lo novamente no frontend ao atualizar. Embora alguns outros sistemas de modelos também tenham implementações em outras linguagens além da implementação inicial, o Mustache é o único com várias implementações oficiais .

Os modelos de bigode também têm uma sintaxe muito simples que não adiciona muita confusão ao HTML e, na verdade, ainda se parece com HTML (diferente do HAML).

    
por 13.03.2014 / 21:24
fonte