Upload
freedom-dayms
View
2.125
Download
1
Embed Size (px)
DESCRIPTION
Seja "Smarty" na arte do desenvolvimento(Raphael Araújo - PHPMS)
Citation preview
Seja “Smarty” na arte do desenvolvimento
Desenvolvendo aplicações PHP utilizando Smarty
Sobre o Autor
Nome: Raphael Almeida Araújo Formação: Bacharelado em
Ciência da Computação pelas Faculdades Integradas de Caratinga (MG)
Linguagens: Pascal, C/C++, PHP e Ruby
Frameworks: Symfony e Ruby on Rails
Comunidades: PHP MS, Symfony-Brasil e Rails MS
Campo Grande – MSPágina 1
Sobre a platéia
Vejamos um pouco sobre vocês...
Campo Grande – MSPágina 2
Índice
1.O que é?
2.Outras alternativas?
3.Como utilizar (Programador / Designer)?
4.Quem utiliza?
5.PHP sem Smarty vs. PHP com Smarty
6.Template e mais o quê?
7.Vantagens e Desvantagens
8.Cacheamento
9.Teste de desempenho
10.Smarty e MVC
Campo Grande – MSPágina 3
O que é?
Embora Smarty seja conhecido como uma "Template Engine", seria mais fielmente descrita como um "Template / Presentation Framework." Ou seja, proporciona ao programador e designer uma riqueza de ferramentas para automatizar tarefas comumente tratadas na camada da apresentação de uma aplicação.
Campo Grande – MSPágina 4
Representação
Imagem por Dr. E.F. Tymac, usada sobre licença.(Veja http://en.wikipedia.org/wiki/Image:TempEngWeb016.svg)
Campo Grande – MSPágina 5
Outras alternativas
Heyes Template Class - http://www.phpguru.org/static/template.html
ShellPage - http://www.maiatech.com/shellpage.php
OO Template Class - http://www.net-track.ch/opensource/template/
SimpleTemplate* - http://sourceforge.net/projects/simpletpl
bTemplate - http://www.massassi.com/bTemplate/
Savant - http://phpsavant.com/
Veja mais http://www.whenpenguinsattack.com/2006/07/19/php-template-engine-roundup/
Campo Grande – MSPágina 6
Como utilizar?
Programador:− Baixe o fonte aqui:
http://smarty.net/download.php. Descompacte o arquivo baixado dentro do diretório de sua aplicação e é só sair usando.
− :-) Talvez seja um pouco mais dolorido que isso.
Campo Grande – MSPágina 7
Designer:− O Smarty não precisa de nenhuma
IDE especifica para que algum programador ou designer usufrua de suas vantagens. Você pode utilizar sua IDE favorita, basta apenas que ela tenha um editor de texto.
− Para designer que utilizam DreamWeaver da Adobe, existe plugin que lhe auxilia a utilizá-lo.
Campo Grande – MSPágina 8
Quem utiliza? Mais algum???
No site oficial encontra-se uma lista de mais de 300 sites registrados até o momento. Sendo que devem haver muitos outros sites menores ou maiores que não quiseram registrar por questões de segurança, vontade ou tempo. Veja http://smarty.incutio.com/?page=SitesUsingSmarty
Campo Grande – MSPágina 9
PHP sem Smarty vs. PHP
com Smarty
PHP:
Campo Grande – MSPágina 10
PHP sem Smarty vs. PHP
com Smarty
Smarty:
Campo Grande – MSPágina 11
s
Template mais o quê?
Cache
Arquivos de configuração
Segurança
Fácil de usar e fácil dar manutenção
Filtros
Plugins e Add-ons
Campo Grande – MSPágina 12
Vantagens e Desvantagens
Desvantagens:− Tudo tem que ser consultado,
gerado, atribuído, somado, subtraído, etc. Até que o usuário consiga visualizar alguma coisa.
− Duas linguagens para uma mesma tarefa
− PHP 4
Campo Grande – MSPágina 13
Vantagens e Desvantagens
Vantagens:− Fácil aprendizado− Fácil manutenção− Ferramentas de cache de fácil
utilização− Funções de template. Fácil gerar
HTML− Criação e utilização de plugins.
Fácil compartilhar código entre aplicações
− Aumento de performance *
Campo Grande – MSPágina 14
Cacheamento
Gerando cache:
Campo Grande – MSPágina 15
Cacheamento
Utilizando cache gerado:
Campo Grande – MSPágina 16
Cacheamento
Limpando cache:
Campo Grande – MSPágina 17
Teste de desempenho
Será apresentado 2 métodos em 5 códigos distintos para 100 sequências de testes:
− PHP− PHP com Smarty
Campo Grande – MSPágina 18
Teste de desempenho
Campo Grande – MSPágina 19
Teste de desempenho
Campo Grande – MSPágina 20
Teste de desempenho
Campo Grande – MSPágina 21
Smarty e MVC
Model− Doctrine
Controller− Minha Classe
View− Smarty− Minha Classe
Vamos dar uma olhada nos códigos...
Campo Grande – MSPágina 22
Perguntas
???
Campo Grande – MSPágina 23
Referências
http://smarty.net/ - Site Oficial
http://devzone.zend.com - Site da Zend para desenvolvedores PHP
http://devzone.zend.com/tag/PHP5 - Site da Zend para desenvolvedores PHP 5
http://codeutopia.net - Blog sobre desenvolvimento web que fala coisas interessante de PHP
http://hasin.wordpress.com - Blog do autor do livro "Smarty PHP Template Programming and Applications"
Campo Grande – MSPágina 24
Referências
http://phpdebug.sourceforge.net - Barra de ferramentas para debug de códigos PHP
http://www.phpdoctrine.org/ - Site oficial do ORM (object relational mapper) para PHP 5.2.3+
http://www.symfony-project.org/ - Site oficial do FrameWork Symfony
http://pt.wikipedia.org - Enciclopédia livre
http://kate-editor.org/ - Site do editor de texto Kate
Campo Grande – MSPágina 25
Referências
http://www.whenpenguinsattack.com - JasLab (Venda de ferramentas para melhora de performance de site WordPress)
http://jquery.com/ - FrameWork para javascript
Campo Grande – MSPágina 26