Aplicativos Mobile – Multiplataforma vs Nativo: Qual utilizar?

Inegável reconhecer que a chegada do primeiro iPhone e, posteriormente, o lançamento da Apple Store, abalaram o mundo do desenvolvimento de Software. Todos os olhares se voltaram para aquele celular com tela enorme (para a época) que realizava milhares de tarefas através de uma interface intuitiva e fluida. O aparelho, do ponto de vista dos consumidores, popularizou os chamados “smartphones” ou “gadgets”, que em pouco tempo dominaram o mercado. Em 2011, pela primeira vez na história a venda desses gadgets superou a venda de computadores comuns (desktops e laptops). Isso continua até hoje, e a tendência é que essa dispersão (diferença entre smartphones e computadores vendidos) só aumente com o passar dos anos.

Já pelo ponto de vista dos desenvolvedores, a nova categoria de aparelhos apresentou um novo universo a ser explorado, tanto no âmbito de estudo e conhecimento técnico, quanto no âmbito dos negócios. A ordem natural é que os usuários migrem totalmente para o smartphone para realizar funções corriqueiras, como navegar na internet, conferir e-mail e redes sociais etc. Dessa forma, o foco estará cada vez mais no telefone. Tendo isto em vista, diversas empresas estão começando a focar nesse novo campo de negócio, e desenvolvendo aplicativos para lazer, utilitários ou até mesmo para trabalho! Isso mesmo, o desenvolvimento de aplicativos empresariais deu um salto enorme nos últimos anos.

Logo, percebe-se que possuir uma estratégia de atuação no mundo mobile é essencial para qualquer empresa, seja ela de pequeno, médio ou grande porte. Atualmente as duas maiores vertentes são:
criar sistemas web que suportem a maior gama de dispositivos possíveis, desde smartphones até os tradicionais desktops;
desenvolver aplicativos móveis

Uma grande tendência é o investimento na criação dos chamados “aplicativos” que, de forma geral, podem ser desenvolvidos através de duas abordagens: desenvolvimento nativo ou multiplataforma. A escolha entre qual das duas utilizar irá depender de diversas variáveis; entretanto é uma decisão que vem se mostrando essencial para o sucesso da aplicação.

Aplicativos nativos

Aplicativos nativos podem ser considerados aqueles que possuem acesso direto às APIs nativas de cada smartphone, e que podem ser desenvolvidos tanto em linguagens de programação específicas de cada plataforma quanto em frameworks. Isto significa que estes possuem uma integração muito forte tanto com o Hardware quanto com o sistema operacional do smartphone.

Dessa forma, os aplicativos criados são geralmente mais fluidos e apresentam uma melhor performance do que aplicativos multiplataforma. Isso porque eles utilizam apenas elementos de layout específicos de cada uma das plataformas, e possuem acesso a todas as ferramentas que o dispositivo disponibiliza. Estas características resultam em um aplicativo muito mais integrado com o sistema operacional do smartphone, uma vez o desenvolvedor possui acesso a rotinas em background, processos de sincronização automática, entre diversas outras funcionalidades. Estas podem até estar disponíveis em alguns frameworks multiplataformas, mas apresentando limitações de funcionalidade e/ou disponibilidade. Mas é claro que o bom resultado do App depende também da expertise do desenvolvedor.

Em contrapartida, o fato de desenvolver um aplicativo para cada plataforma pode alongar o tempo de desenvolvimento, ou então gerar a necessidade de mais de uma equipe (uma para cada plataforma). E isso implica em custos para o projeto.

Aplicativos multiplataforma

Aplicativos multiplataforma são aqueles desenvolvidos através de um framework e que são compatíveis com a maioria dos sistemas operacionais existentes (Android, iOS, Windows Phone, BlackBerry etc). Existem vários frameworks no mercado para desenvolvimento desse tipo de aplicativos, livres ou pagos. Entre os mais conhecidos estão os  o PhoneGap, Ionic, Meteor e Sencha Touch (grátis) além do Kony e do Xamarim (pagos, no caso do Xamarim a versão completa).

Nos casos em que se deseja desenvolver um aplicativo compatível com mais de um sistema operacional (o que é mais comum hoje em dia), esse tipo de desenvolvimento apresenta, na maioria dos casos, um custo de desenvolvimento menor do que gerar um aplicativo nativo para cada plataforma. Isso porque a equipe pode ser uma só, o código é reaproveitado para todas as plataformas, o tempo de desenvolvimento é menor, entre outras vantagens.

Entretanto, esse tipo de abordagem também apresenta problemas, pois como os sistemas operacionais atuais são um pouco discrepantes entre si, muitas vezes são necessários alguns ajustes para gerar as versões finais de cada plataforma. Mas nada muito desesperador.

E então, nativo ou multiplataforma? A resposta é: depende do requisito do seu projeto. Caso seja imperativo uma boa performance, um app nativo deve ser a melhor opção. Caso seu maior problema seja tempo, a escolha de um desenvolvimento multiplaforma pode ser a mais viável.

 

Ficou interessado sobre desenvolvimento mobile? No próximo post daremos algumas dicas mais técnicas sobre os tipos de desenvolvimento.

Quer criar um app pra sua empresa? Entre também em contato com a gente. Possuímos uma equipe experiente e capacitada para criar o seu App.

 

Imagem: Apple

 

Por: Magno Batista e Renan Ferreira
Revisão: Dandara Chaves

Deixe um comentário