Simplate, um novo Template Engine para PHP

Depois de um ano incubando, usando e amadurecendo o Simplate, temos o prazer de compartilhá-lo com a comunidade liberando ele sob a licença GPLv3.

Novidades Trazidas pelo Simplate ao mundo do Template Engine para PHP.

O Menos Intrusivo no HTML

  • O menos intrusivo possível no HTML criado pelo designer e/ou HTMLer. Os seus comandos preservam a estrutura e conteúdo (placeholders) do mesmo. Isto significa que o layout, mesmo depois de receber os códigos simplate, continua totalmente navegável, da mesma forma como foi criado;
  • Mantém a correspondência linha a linha com o HTML original. Nenhuma tag acrescentada, nenhuma tag retirada. Sempre!;
  • A codificação Simplate pode ser aberta diretamente pelo navegador, independente de servidor. Neste caso, o HTMLer/Designer deverá ver exatamente aquilo que ele havia gerado incluindo os placeholders – conteúdo de enchimento para ilustrar seu layout com conteúdo
  • Diminui consideravelmente os erros de montagem do HTML pois os programadores, HTMLers e Designers encontrarão um código muito mais limpo e familiar para ajudar na depuração. E os HTMLers e Designers verão o seu próprio código com apenas alguns atributos a mais em algumas tags.

Separação do Layout da Lógica

O Simplate possui um número reduzido de comandos que realmente evita o aparecimento de lógica de programação no template codificado. Por exemplo, o Simplate não possui o comando IF. Caso seja necessário saber se um bloco deve ou não aparecer, pode-se utilizar o próprio comando bind. Um bind em qualquer valor nulo ou indefinido fará com que o bloco do mesmo não apareça.
Na verdade o bind serve para muita coisa:

  • Simplate não tem include, pois um bind em um objeto Simplate inclui outro template;
  • Simplate não tem IF, pois um bind em um valor nulo ou não pode fazer um bloco sumir ou não; e
  • Simplate não tem For, pois um bind em um Iterador, provoca a repetição.

Premissas do Desenvolvimento Simplate

  • Os comandos Simplate devem preservar o HTML original, mantendo conteúdo e a forma do mesmo; e
  • Mantenha o Simplate simples!

Resumo dos comandos e funcionalidades da versão

  • bind – obtém o valor referenciado o substitui o conteúdo da tag no caso de scope=inner, ou sobre a própria tag, no caso de scope=outer. Caso o valor seja nulo, a tag é retirada;
  • as – Utilizado em conjunto com o bind em um objeto iterador. Provoca a repetição do conteúdo no caso de scope=inner ou repete a própria tag com scope=outer;
  • #[nome_atributo] – Utilizado em conjunto com o bind em um objeto, obtém o atributo do objeto de mesmo nome e substitui no atributo correspondente da tag.
  • show – Mata a tag caso o valor seja nulo. Útil para ser utilizado no lugar do bind, quando o objetivo não é substituir o conteúdo da tag pelo valor referenciado.
  • MasterPage – Pemite que uma página defina uma estrutura que será compartilhada por várias outras páginas/templates.

Download

O Simplate pode ser obtido na seguinte página: http://www.simplate.org/node/14
Para conhecer mais o Simplate Acesse: http://www.simplate.org/

Profissionais TI

Mais artigos deste autor »

Eventos, cursos, livros, certificações, empregos, notícias e muito mais do mundo da TI (Tecnologia da Informação).


Deixe seu comentário

Seu endereço de e-mail não será publicado. Campos com * são obrigatórios!