Desenvolvimento, Design & UX, Startups & Empreendedorismo

Design responsivo, Desenvolvimento Nativo e App Híbrido, quando usar?

Na era do mobile tem muita gente falando sobre design responsivo, aplicativo híbrido, desenvolvimento nativo e assuntos relacionados. Neste post vou explicar um pouco como isso tudo funciona e prós e contras de cada escolha.

Vamos começar entendendo como tecnicamente as coisas são feitas para cada tipo:

Desenvolvimento nativo

É quando o aplicativo é desenvolvido usando os recursos da plataforma. No caso de iOS (iPhone, iPad) usa-se a linguagem de programação Objective-C , o framework de desenvolvimento Cocoa Touch e a ferramenta Xcode. Para Android usa-se a linguagem Java com o Android SDK na ferramenta Eclipse + ADT e no Windows Phone a linguagem C#, Windows Phone SDK no Visual Studio.

Optar por desenvolvimento nativo é mais caro, pois é necessário desenvolver um novo código para cada plaforma. Mas também o resultado final é melhor, pois o aplicativo funcionará mais fluído e melhor integrado com os recursos de cada plataforma.

A maioria dos aplicativos que desenvolvemos na Jera são nativos.

Design Resposivo

É uma técnica de desenvolvimento para que aplicativos Web se adaptem a várias resoluções de telas. Se você acessar o site da Jera de um smartphone, tablet e PC você vai perceber como o conteúdo se adapta a cada resolução.

Isso é possível desenvolvendo o código do site ou do aplicativo Web usando técnicas que combinam HTML5, CSS e JavaScript de forma que mudanças na resolução da tela forçam o conteúdo a se adaptar.

Eu recomendo que qualquer desenvolvimento para Web faça uso desta técnica para permitir que o acesso por meio de dispositivos móveis possa ser mais confortável. Só pra dar uma ideia, 50% de todos os acessos ao site da Jera vêm de dispositivos móveis rodando iOS, Android ou Windows Phone.

Não ter um website responsivo hoje é sinônimo de perder clientes.

Aplicativo Híbrido

Aplicativo híbrido é um misto de desenvolvimento nativo e design responsivo. Normalmente é desenvolvido usando HTML5CSS e JavaScript e exibido em um Webview, que é um Navegador Web embutido dentro do aplicativo.

Tem algumas vantagens como menor custo de desenvolvimento e desvantagens como limitações para funcionamento off-line e performance.

Existem também alguns frameworks que facilitam esse tipo de desenolvimento como PhoneGap e Titanium. Nós já fizemos alguns apps e protótipos usando essas tecnologias, mas não vimos grandes vantagens em termos de custo e complexidade técnica.

.:.

Em suma, cada situação tem sua aplicação e suas limitações, por isso fiz uma tabela para deixar mais fácil esse entendimento:

Estratégia Prós e contras Quando usar
Desenvolvimento Nativo
  • Melhor uso dos recursos da plataforma
  • Melhor perfomance e funcionamento off-line
  • Maior custo de desenvolvimento e manutenção
App com uso intenso de GPS, recursos off-line (sincronização), câmera, notificação push e acelerômetro
Design Responsivo
  • Mesmo código entre plataformas diferentes
  • Maior liberdade de design, menor imposição dos padrões de design
  • Menor custo e complexidade, limitações para funciomento off-line e uso de recursos da plataforma
Website com funcionamento mobile, administração do app ou website, páginas de compartilhamento em redes sociais
Aplicativo Híbrido
  • Compartilhamento de boa parte do código entre plataformas
  • Possibilidade do uso de recursos da plataforma com código nativo
  • Menor custo, porém pode acrescentar complexidade, limitações de design e performance
Redução do custo para desenvolvimento nativo usando alguns recursos (push e câmera por ex.), aproveitamento de código já existente

É isso, se tiver alguma dúvida ou quiser discutir algum ponto, fique à vontade para deixar seu comentário!

 

como lançar um aplicativo de sucesso