Durante uma solicitação típica de página, o PHP fazia coisas como
começar uma sessão, consultar um banco de dados, processar alguns dados,
e, finalmente, gerar uma tonelada de métricas de HTML que seriam
retornadas para o browser do usuário. Em outras palavras, toda a
interface do usuário era gerada no lado do servidor pelo PHP.
Ocasionalmente, era possivel incluir o prototype.js ou jQuery para fazer
um pouco de validação de formulário, ou uma lista dropdown com um campo
para “auto-completar”.
Mas então veio o iPhone…
Em 2007, o iPhone deu início a uma onda de interesse em computação
móvel. Como milhares de desenvolvedores maravilhado por aquele pequeno
dispositivo mágico que colocou a web no bolso de muita gente. Sempre
conectado, navegadores excelentes, interação de toque intuitiva – é de
fato incrível, e todos queriam entrar nessa de cabeça.
Quando o iPhone foi anunciado pela primeira vez, Steve Jobs pediu ao
desenvolvedores terceirizados que construíssem aplicativos web se eles
quisessem programar para o iPhone.
Claro que Jobs acabou voltando atrás menos de um mês depois, com o
anúncio do Cocoa Touch e a iTunes App Store. E a guerra santa entre “web
apps” e “apps nativos” nasceu.
E o que isso tem a ver com PHP?
Felizmente,
agora temos a convergência de novas tecnologias que tornam a construção
de web apps – móveis e outros – muito mais fácil.jQTouch, Sencha Touch, e mais recentemente, jQuery Mobile tornaram
a vida mais fácil para escrever JavaScript para browsers móveis. O CSS3
nós dá transformações, transições e animações que nos permitem
facilmente adicionar efeitos visuais sofisticados. E, mais
drasticamente, o HTML5 define uma enorme quantidade de novos recursos —
geolocalização, canvas, sockets, workers, armazenamento de dados do
lado do cliente, suporte a cache offline da aplicação, cross-origin
resource sharing, e por aí em diante.
Como resultado,muitas pessoas podem criar suas próprias UI com HTML
estático, CSS e documentos JavaScript que conversam com uma API do lado
do servidor construída com PHP. Esta abordagem baseada em API pode
minimizar, de fato, a quantidade de dados enviados através do fio,
porque é possível esconder os arquivos estáticos localmente, e somente
requisitar atualizações de dados relativamente pequenos do PHP
(normalmente na forma de JSON). Isso também tem grandes vantagens secundárias. Aqui estão as três maiores:
1. Divisão de trabalho:
Uma vez que você tem configurado uma API do lado do servidor, você
pode facilmente ter seu trabalho de design do aplicativo no front end
sem saber o mínimo de PHP, linguagens de templates, ou qualquer outra
tecnologia do lado do servidor. Você não tem nem que dar acesso ao
servidor para o designer – ele pode codificar contra a API com os
arquivos no seu desktop.
2. Clientes múltiplos
O cenário da informática está sob massivo crescimento e
transformação. Estamos vendo telas tão pequenas quanto cartões de
credito, e tão grandes quanto um outdoor. E está acontecendo também uma
grande separação entre dispositivos que suportam entrada de toque, de
mouse e, em menor número, de voz.
Diferenças no tamanho físico, modos de interação e capacidades do
dispositivo exigem que forneçamos experiências otimizadas ao usuário
para o terminal em questão. Expor uma API do lado do servidor,
construída em PHP, possibilita o suporte a clientes front end, sejam
eles clientes menores, construídos em HTML, CSS, e JavaScript, ou
maiores, construídos com frameworks nativos.
Os benefícios dessa abordagem têm sido demonstrados pelo Google,
Yahoo, e, talvez, mais dramaticamente pelo Twitter, que documentou e
lançou uma API simples para a comunidade de desenvolvedores. Graças a
isso, todos os clientes do Twitter encontraram seu caminho no mundo
digital. Começando com uma API que permite esse tipo de flexibilidade,
que parece infinita, certamente ela contribuiu imensamente para a
aceitação do Twitter.
3. À prova do futuro
O cenário da informática está evoluindo e é muito difícil prever o
que vem a seguir. Muitas pessoas inteligentes estão trabalhando em novas
tecnologias que irão mudar a maneira com que interagimos com
computadores, e mais importante, um com o outro. Tudo, desde projeções holográficas de eventos de esporte ao vivo , até entradas das ondas cerebrais dos usuários estão
em jogo. A melhor maneira de se manter flexível à vista de novos
desenvolvimento é fornecer uma API robusta para lidar com o máximo do
levantamento do back end possível.
Comece com sua API
Para trabalho web front end, você vai querer se familiarizar com a
nova maravilha que é o HTML5 e o CSS3, e mais importante, aprender
JavaScript! É uma sintaxe muito parecida com PHP e ela deveria parecer
bem familiar para você (existe até um artigo do
PHP Advent sobre isso). No entanto, existem muitas diferenças
importantes entre PHP e JavaScript que você realmente precisa entender
antes de se auto intitular um especialista. O livro JavaScript: The Good
Parts, de Douglas Crockford é recomendado. Se você programa para a web,
deve lê-lo.
Para finalizar, nunca houve um momento melhor para ser um
desenvolvedor web. A convergência de uma conectividade ubíqua, serviços
de cloud e telas de toque interativa estão criando um ambiente onde
qualquer um pode construir experiências do usuário convincentes que
tenham um alcance massivo com uma barreira de entrada muito pequena.
Então volte para seu editor de texto e comece a codificar
Nenhum comentário:
Postar um comentário