O mercado de dispositivos móveis vem crescendo a cada dia, e com isso a demanda por aplicativos para estes equipamentos. Essa demanda, tem gerado diversas oportunidades para empresas de software incrementarem suas soluções com novos módulos, ou até mesmo, mudar radicalmente a direção da empresa, partindo para o desenvolvimento de aplicativos que não tem nada a ver com o foco do negócio atual.

Mas antes de se aventurar por este novo caminho, deve ser escolhida a ferramenta de desenvolvimento e linguagem de programação que serão utilizadas. E sempre que esse tema vem a tona, cada programador tem a sua preferência. Para mim, a melhor linguagem ou ferramenta, é aquela que vai conseguir levar você a atingir seu objetivo (sendo eficaz), com o menor custo possível (sendo eficiente). Mas para chegar a essa conclusão, teremos que analisar todo o contexto de onde a empresa está inserida, o objetivo do projeto, a capacitação da mão de obra, o tempo do mercado, etc.

Mas para começar, uma escolha deve ser feita:  Devenvolver nativo ou html ?

Para que você tenha mais confiança para tomar essa decisão, vamos refletir sobre alguns aspectos:

Acesso aos sensores do aparelho;

Nos aplicativos onde as funcionalidades críticas estão diretamente ligadas ao acesso de recursos do aparelho como GPS, Acelerômetro, Câmera, etc, o desenvolvimento do mesmo, tendem a ser de forma nativa, pois, conseguem explorar melhor estes recursos. Atualmente existem diversas ferramentas, que apesar de permitir o desenvolvimento em determinada linguagem (Java, Delphi, etc), no momento do deploy, o código é convertido e compilado para a plataforma selecionada.

Atualização de software;

Neste caso, desenvolver em HTML, pode ser ótima alternativa, principalmente pelo fato de que a atualização do software no cliente é instantânea. Muitos sites, utilizam deste recurso para criar versões para dispositivos móveis, gerando uma experiência melhor para o usuário através de uma interface responsiva. As aplicações hospedadas na GooglePlay ou AppleStore, possuem recursos que facilitam o processo de atualização dos aplicativos, mas este depente de alguma forma da permissão do usuário, o que pode ser um impeditivo.

Performance;

Para abordar este tópico, vamos lembrar de um caso bem emblemático. Algum tempo atrás, o facebook trocou sua implementação HTML para código nativo e um ganho muito perceptível foi justamente nesse requisito: performance. Não sei dizer, se esse foi o principal motivo para a migração do aplicativo, mas com certeza o aumento na performance foi a mais notada. Ainda falando deste caso, o facebook, utilizava uma implementação híbrida, onde o aplicativo utilizava um navegador embutido, dando a sensação de ser um aplicativo nativo.

Compatibilidade; 

Este é um assunto muito controverso, pois quando pensamos neste tema, a melhor alternativa parece ser desenvolvimento HTML, pois, teoricamente roda em qualquer aparelho através do navegador. E é justamente aí onde pode haver a maior dificuldade. Quem trabalha ou já trabalhou com desenvolvimento web, sabe bem que, os navegadores tem comportamentos diferentes interpretando o mesmo código (html + CSS+ javascript). Ou seja, a compatibilidade entre diversos dispositivos para quem desenvolve HTML está condicionada também a quantidade de navegadores.

Estes são apenas alguns pontos que devem ser analisados antes de iniciar qualquer empreita nessa direção. Para explorar um pouco mais sobre esse tema, você pode participar gratuitamente do hangout promovido pela Tecnospeed .

Aguardamos você.