XPT Framework by Alexsandro is licensed under a Creative Commons Atribuição-Vedada a Criação de Obras Derivadas 2.5 Brasil License.
Based on a work at xpt.alexsandro.com.br.
http://creativecommons.org/licenses/by-nd/2.5/br/
18/05/2007
Objetivo
• Construir aplicativos web e sites muito mais rápidos com muito mais desempenho e eficiência
• Criar aplicações web escalar onde será possível se adaptar facilmente com as mudanças tecnológicas do dia-a-dia
• Usufruir das novidades da Web 2.0• Diminuir tráfego na rede e obter desempenho excepcional (Steve
Souders, evangelista, chief guru, chief Performance do Yahoo, lançou um livro)
• Possibilidade de trabalhar com mais interfaces UI ou banco de dados na mesma aplicação(Master page do ASP.net e padrões java, arquitetura Smalltalk)
• Trocar interface da aplicação em passe de mágica• Obrigar a trabalhar com HTML semântico*• Dividir o trabalho do designer e programador para que possam
ocorrer ao mesmo tempo sem um depender do outro.• Fácil manutenção• Boa organização de código, arquivos e projetos• Suporte a SEO (Search Engine Otimization)
Introdução
• Boas praticas de programação• Novas tecnologias• Total aproveitamento de códigos evitando
qualquer duplicidade de algoritmo.• Re-aproveitando componentes e pequenos
frameworks • Fácil manutenção• Performance excepcional
Por que PHP?
• Trabalha com charset UTF-8 para AJAX de forma bem fácil a que ASP.• Suporte nativo com poderosa expressão regular so encontrei em PHP e
JAVASCRIPT• Entendo praticamente nada de JAVA apensar de se uma boa saida, iria
demorar anos para ter um bom domínio• Ruby on Rails, Pyton com framework django é uma febre de sucesso
pra internet, mas a curva de aprendizado será maior.• PHP é muito fácil, é orientado a objeto, bastante rápido e tem uma vasta
informação na internet e livros• Todos exemplos de códigos são exibidos em PHP• Mas MySQL 4 é um “lixo” comparado com MSSQL Server 2000, mas
google utiliza-o e o MySQL 5 é ja é muitoooo bom.• Segundo o maior site de sucesso de fotos no mundo, o Flickr, “PHP is
great”• Smarty Template é um recurso magnífico e escalável• PEAR para HTTP 1.1 é perfeito• Sites de sucesso usam JAVA e PHP• Mod_rewrite para URL amigáveis só facilmente existe no Apache• Hospedagem Apache com brinde(2 servers) o MSSQL, nunca encontrei ☹
Engenharia de Software
• Design Pattern MVC (Model, View, Controller)• Boas práticas de desempenho do Yahoo
o Make fewer HTTP requests (junção de js, css, imagem)o Add an Expires headero Gzip componentso Minify JSo Configure ETagso Flush the Buffer Earlyo Put Stylesheets at the Topo Minify JavaScript and CSSo Put Scripts at the Bottom
• Entrega por estágios• URLs amigáveis• Abstração de banco de dados• Avançado esquema de cache por configuração
o Server-sideo Client-side negociação de headers do protocolo HTTP
1.1
Boas práticas de desempenho do Yahoo
Web 2.0
• Tim O'Reilly - Conferência de brainstorming
• Tim Berners-Lee e criador da WWW(World Wide Web) e atualmente diretor da W3C
• Criação de aplicações ricas e dinâmicas• Sem necessidade de escrever nenhum
javascript
Classes UML – Drives de banco de dados
Classes UML – Core
Classes UML – Aplicação teste
Visão do futuro
• Web Services, RESTFul• Suporte multilingual• Implementação de boletos
Bibliografia
• http://pt.wikipedia.org/wiki/MVC• http://developer.yahoo.com/performance/• http://www.php.net/• http://pear.php.net/• http://www.smarty.net/• http://code.google.com/• http://msdn.microsoft.com/msdnmag/issues/08/01/
PHPandIIS7/Default.aspx• http://yuiblog.com/blog/2007/04/11/performance-research-
part-4/• http://www.slideshare.net• http://guia-er.sourceforge.net/• http://www.unicode.org/standard/translations/
portuguese.html