Tableless - Desenvolvimento inteligente com Padrões Web

27/01/2010
Artigos

Porque é a web que comanda

Porque fazer um sistema que deve ser instalado no iPhone se você pode fazer um sistema web que pode ser acessível em todos os smartphones?

Por


A AppStore fez sucesso. Bastante. Por vários motivos: um deles foi por conta da remuneração do desenvolvedor. Teve gente que ganhou milhares de dólares sozinho vendendo aplicações por 99 centavos. Obviamente isso chamou a atenção de muita gente, que começou a fazer aplicações enlouquecidamente para ganhar alguns trocados. Consequentemente um grande números de aplicações que não precisam ser instaláveis no aparelho, apareceram. Vários desenvolvedores não perceberam que dependendo do seu sistema, ele não precisa ser desenvolvido exclusivamente para ser instalado na plataforma do iPhone.

Hoje, aparelhos como o iPhone, que tem um browser com um bom suporte a HTML 5 e CSS 3, possibilitam criar sistemas e aplicativos baseados em web, com características, designs e comportamentos idênticos aos de aplicações instaláveis nos aparelhos. E o melhor, podem ser utilizados de qualquer lugar, pela web. Outro ponto negativo é que desenvolver para iPhone/iPod Touch é um bocado burocrático. Você precisa ter o SDK que só funciona no OS X, e você precisa aprender Objective C para programar os Apps para Apple. Em contrapartida, para fazer um App baseado em Web, onde seus clientes acessarão o sistema diretamente pelo browser do aparelho, é preciso saber Javascript, HTML 5 e CSS 3. Se você já é desenvolvedor Web, você já sabe desenvolver para iPhone, iPod Touch, Android e qualquer outro dispositivo similar.

Se você gosta dos efeitos de transição dos aparelhos, você pode fazê-los sem problemas utilizando JQuery ou CSS 3. Há até um plugin de JQuery chamado JQTouch, que permite fazer efeitos idênticos ao do iPhone. Esse plugin foi pensado exatamente para funcionar em Mobile Safari e outros aparelhos com browsers avançados, como no Android.

Um caso sobre o que estamos falando é a aplicação do Itaú. Se você tem um iPhone, baixe o aplicativo pela AppStore. Ao abrir o aplicativo, perceba que o sistema não faz nada além de mostrar o site do Itaú. É muito mais interessante e barato ensinar o usuário a visitar o site em vez de procurar um aplicativo e instalar. Não é necessário nem divulgar um endereço mobile do site – esse aliás é outra discussão.

Obviamente, há exceções. A maioria dos jogos, se não todos, e alguns sistemas disponíveis funcionam melhor (ainda) se forem instalados no aparelho. Mas a grande maioria dos sistemas, principalmente aqueles que o usuário simplesmente insere ou verifca informações e dados, podem ser servidos diretamente pela web.

No caso do iPhone, os sistemas que utilizam recursos do aparelho, como por exemplo fazer o aparelho vibrar, bluetooth, bateria, GPS e etc, precisam ser instalados. Isso não se aplica a alguns mobiles da Nokia que são baseados na plataforma WRT.
A plataforma WRT permite que você desenvolva aplicativos utilizando Javascript, HTML e CSS. E por meio de Javascript, você pode ativar os recursos que ter utilizar no aparelho. Nesse caso, há uma vantagem em cima do iPhone: você não precisa aprender Objective C. Basta saber Javascript, CSS e HTML.

O cenário de hoje é interessante. Tudo o que o desenvolvedor sempre sonhou em utilizar de HTML 5 e CSS 3 pode ser aplicado no desenvolvimento para web mobile. Os browsers estão mais espertos e a cada dia trazem novidades interessantes para melhorar o desenvolvimento dos padrões e da web. Realmente, daqui pra frente, é um novo mundo que se forma. Um mundo tão ou mais complexo que o desenvolvimento web para desktops como conhecemos hoje. Pra mim, é mais apaixonante.

Por Diego Eis

Diego Eis criou o Tableless para disseminar os padrões web no Brasil. Como consultor já treinou equipes de empresas como Nokia, Globo.com, Yahoo! e iG. É palestrante e empreendedor.

http://twitter.com/diegoeis/

Veja os outros posts de

  • Ariê

    Muito legal, isso é bom para ampliarmos nossos conhecimentos para outros dispositivos. Quando entrei na faculdade 2004, 2005 sempre batiam na tecla que mobile era o futuro e já está se tornando.

    Principalmente por não precisarmos ter um plano caro de internet em alguma operadora mas basta termos um wifi e já podemos utilizar.

    Acho legal este assunto e estou gostando que o Tableless está entrando nele como o pessoal vem pedindo.

    Aguardo mais posts….

  • http://www.racum.com/ Racum

    Tem um livro colaborativo sendo escrito na O’Reilly sobre esse tema. A apesar de ainda ser um “beta”, ele já abrange várias técnicas interessantes:

    http://building-iphone-apps.labs.oreilly.com/

  • Ricardo H.Bin

    Aproveitando o gancho, penso que quem estudou objective C e faz aplicativos pro iPhone já ganhou o que tinha que ganhar.

    Com essa do html5/CSS3 e também do flash CS5 que exporta direto pro iPhone, o mercado pra esses desenvolvedores tende a cair, não?

  • http://harlley.net Harlley

    Excelente artigo! HTML, CSS e JavaScript já são realidade para desenvolvimento para desktop usando AIR, para dispositivos móveis e até para extensões de browsers, vide Google Chrome e Firefox com o JetPack. Agora cabe a nós desenvolvedores, darmos preferência para essas tecnologias, quando formos criar os nossos aplicativos, independente da plataforma.

  • Ismael

    Acho que exagerou um pouco. Entendo que usou o iPhone mais como uma parâmetro da nova web.

    O que não gosto nessa abordagem “tudo web” é que, sendo contundente, ela é baseada na mera comodidade do desenvolvedor.

    A vantagem real (e grande) que vejo em desenvolver web é evitar a dor de cabeça do deploy, tanto inicial como atualização.

    De resto é muito mais pelo comodismo de aprender somente JS+CSS e nunca mais precisar aprender outra coisa. Ou a ilusão de que isso será suficiente.

    Mas tenho esperanças que surjam ainda mais inovações que aumentem algo avançado: que o browser tenha muito recurso do desktop.

    Se a Nokia criar algo (um plugn?) que ajude no deploy da QT seria uma maravilha.

    Mas por enquanto ficamos assim, com o paradoxo de quanto mais o browser avançar, mais ele segue rumo ao seu fim: deixar de existir como algo isolado do desktop. :)

  • http://twitter.com/diegoeis/ Diego Eis

    Não entendi sua colocação Ismael.

    Como assim ela é baseada na comodidade do desenvolvedor?

  • http://www.tudopodre.com.br Psysapiens

    E lá vamos nós! =D
    O desafio de criar aplicações Web compatíveis com navegadores mobile quanto desktop é muito emocionante.
    ADORO =D

  • http://www.direitolivre.com.br/ Daniel

    Ess e negocio de ter plano em operadora é um grande problema, pois a verdaee é que varias vezes que tive que utilizar um certo serviço não havia wifi disponivel. Acaba que é melhor garantir do que precisar e não poder usar.

  • http://uxp.com.br Leandro Alves

    As vantagens de uma aplicação nativa são: velocidade, integração com outros recursos da plataforma, padrão de interface e independência de rede. Claro que, no caso de um aplicativo que precisa interagir com um servidor externo, para salvar ou enviar dados, por exemplo, a quarta vantagem simplesmente deixa de existir.

    Um bom exemplo de aplicativos web no iPhone, são o Gmail, Google Buzz (melhor que o desktop, na minha opinião) e o Buxfer. Porém, para aplicativos feito o twitter, as diversas versões nativas (twitterrific, echofon etc.) simplesmente desbancam a versão oficial web. Mas, certamente, poderiam ser aplicativos web, uma vez que necessitam de conexão para funcionarem.

    Vejo que um dos maiores motivos para optarem por aplicativos nativo no iPhone, não tem nada a ver com vantagens para o usuário (que muitas vezes nem sequer passa pela cabeça das empresas de publicidade), mas com o retorno e o burburinho criado pela mídia. Atualmente este retorno em marketing espontâneo diminuiu bastante, mas ainda é um fator bem relevante. O aplicativo do Itaú saiu em diversos blogs e até revistas, pelo simples fato de que era um aplicativo de banco para iPhone. :)

  • http://www.tuliofaria.net Tulio Faria

    Um detalhe importante, e se a pessoa não possuir conexão no momento?

    Acontece muito…

  • http://www.tomasvasquez.com.br/blog Tomamais

    Quanto o comentário do pessoal, tudo o que for colaborativo, será online. Estar offline é uma realidade brasileira, já que o preço das operadoras ainda é abusivo. Lá fora a história é outra. Gente usando o 3G para navegar é a coisa mais comum de se ver. Estar offline logo será tão inaceitável como não ter um celular. Estando na Web você não esquenta a cabeça. Para empresas isso é uma garnde economia de tempo (e $$$). Do ponto de vista do developer, vai do que ele gosta (desktop/web), mas saber que pelo menos para esses aparelhos, não só o iPhone, mas outros smartphones suportam HTML 5 e CSS 3, é um alívio sem tamanho.

  • Paulo

    “…ela é baseada na mera comodidade do desenvolvedor.”

    Eu explico:

    Acho que o artigo tende a minimizar a importancia de um aprendizado de uma nova tecnologia (o que acho totalmente errado, deixando o desenvolvedor de estudar, ai vem a tal comodidade, pra nao fazer um curso ou comprar um livro e estudar). O artigo simplesmente fala algo como: ‘nao estude linguagens proprias para smarthphones, é inutil, é bobeira, vc nao precisa disso e nao da dinheiro’. Queiram ou nao queiram, ir nas loginhas como o appstore ou android market, e baixar aplicativos para instalar é tao divertido que chega a ser um vicio, tem muito app que é mais usado e conhecido do que um ‘aplicativo’ de website. O mercado de apps chegando a bilhoes de dolares nao deve ser ignorado para quem mexe com tecnologia, independente da pessoa ser ou nao um ‘fanboy’ de linguagem X ou Y.