funmachine

Mobile Web Development

Deixe um comentário

Lembro-me de discussões acesas de há uns anos atrás, sobre a guerra Web Apps vs. Native Apps no mundo mobile, e de como a perceção era de que o futuro seria Web App. Podemos discutir e listar todas as vantagens e desvantagens de um conceito sobre o outro e vamos encontrar sem dúvida vários argumentos onde podemos fanaticamente defender o nosso ponto de vista:

Browser:

  1. Um único esforço de desenvolvimento, contra desenvolver para uma série de plataformas (iOS, Android, W7, etc).
  2. Manutenção facilitada, um update no servidor e as mudanças introduzidas estão disponíveis para todos os utilizadores.

Nativa:

  1. Look and Feel nativo, permite fornecer uma experiência de utilização mais standard (e como isto tem importância num iAparelho).
  2. Disponível a partir das AppStores, que são pontos importantes de disseminação das aplicações.
  3. Acesso aos recursos dos dispositivos (acelerómetro, câmara, GPS, etc).
  4. Acesso e utilização Offline.

Esta lista está certamente bastante incompleta mas a ideia também não é espremer as vantagens de uma e outra abordagem.Na minha opinião, a solução Browser tem ganho cada vez mais pontos a favor, devido em grande parte à tecnologia HTML5 que veio preencher uns vazios que até então eram críticos:

  • Com HTML5 podemos ter aplicações offline, usando por exemplo local storage.
  • Podemos obter informações de localização.
  • Podemos criar o look and feel adequado ao dispositivo devido ao CSS3 e HTML5.

No entanto, as aplicações nativas têm tido um grande sucesso, e para mim existem três grandes razões, e que no fundo são as grandes diferenças atuais entre aplicações Browser e Nativas:

  • As AppStores que são um canal de distribuição enorme e massificado.
  • Os recursos do SO disponíveis são maiores e portanto podemos oferecer melhores experiências de utilização e funcionalidades até únicas, que nem sequer podem ser implementadas numa aplicação browser.
  • A aplicação está instalada, facilmente acessível através dos menus de apps dos dispositivos.
Apesar de no passado ter a minha opinião bem fincado, atualmente o mundo mobile está tão presente nas nossas vidas que as decisões não podem incidir sobre questões tecnológicas e fanatismos sobre web app contra native app, a verdade é que a questão é puramente de negócio e se queremos lançar uma aplicação mobile no mercado temos que perceber o contexto dessa aplicação. Apesar de um ponto de vista técnico termos que o fazer, não devemos nunca decidir por um dos lados só porque simplesmente “o que um lado nos oferece é suficiente”, ou porque “estou mais à vontade com tecnologias web”. É fundamental perceber o negócio onde a aplicação vai encaixar. Uma questão interessante é apontada neste post, onde é exposto o propósito de utilização. O autor defende que as apps nativas tem uma utilização lean-back ao passo que as browser têm uma utilização lean-forward, ou seja, numa aplicação browser nós estamos essencialmente a pesquisar e navegar em informação ao passo que numa aplicação nativa estamos numa experiência mais imersiva, aproveitando a integração do dispositivo com sensores, câmaras, etc. Para mim faz bastante sentido, apesar de cada vez menos estas diferenças serem sentidas.
Um pequeno exemplo que podemos analisar é uma loja online. Para mim faz tudo o sentido que seja desenvolvido sobre um conceito browser. Primeiro porque, à partida, já deve existir uma plataforma de suporte (a loja online) assente sobre tecnologia web. Depois porque implica um propósito de utilização de pesquisa, navegação por conteúdos. Depois existem uma série de razões de pormenor: não é necessário recursos do dispositivo, a experiência do utilizador também não é à partida o ponto mais essencial e com tecnologia HTML5 e CSS3 já estamos muito (mesmo muito) bem servidos nesse aspeto. No entanto, estará disposto um cliente a perder o potencial de captação que as AppStores, principalmente da Apple e Android, têm para oferecer? São milhares de pessoal que todos os dias pesquisam e navegam à procura de aplicações para os seus telemóveis ou tablets! Neste caso, poderíamos considerar também desenvolver versões nativas! E assim cai por terra a discussão inicial onde tentamos perceber as vantagens de um conceito sobre o outro! Isto leva-me a pensar em arquiteturas mais complexas, APIs e serviços Web onde no fundo temos que esquecer os clientes, podem ser qualquer coisa, browser, nativa, não interessa, o importante é fornecer recursos que estes possam utilizar para alimentar conteúdos e interações.
Concluindo, não penso que qualquer resposta dada esteja errada, seja Browser, Nativa ou as duas, com certeza somos criativos a enumerar argumentos de suporte. A questão não é certamente qual o melhor conceito de um ponto tão purista, a decisão tem que partir com o negócio, o utilizadores e um contexto de utilização em mente, só assim encontramos a melhor resposta. Só os utilizadores irão no futuro dar resposta a esta questão (se é que algum dia vão dar). No entanto é interessante verificar que ao longo destes anos as diferenças entre os conceito browser e nativo são cada vez menores, ainda existem com certeza, mas a linha que os separa é cada vez mais ténue.
Anúncios

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s