Aplicativos Nativos ou Multiplataforma? Eis a questão…

Neste artigo você vai entender o que são Aplicativos Nativos e Multiplataforma, quais suas vantagens e desvantagens no universo do desenvolvimento mobile.

Todos os dias, inúmeros apps surgem com a finalidade de resolver problemas, atender necessidades ou de simplesmente divertir seu público.

Os aplicativos móveis já são uma mania, com eles podemos realizar tarefas de forma muito ágil, como a de pedir comida, um táxi, controlar nossos gastos, acessar nossa conta bancária, realizar compras, vendas, enviar mensagens e muitas outras funcionalidades que deixam nossa vida mais prática.

Os smartphones e os tablets foram os responsáveis por nos tornar dependentes dessa tecnologia. Eles são os propagadores dos aplicativos “ferramentas” mais utilizados atualmente no mundo digital. Com certeza, permanecerão por muito tempo no topo dos itens mais desejados pelo público em geral.

Devido a popularização dos tablets e smartphones, as empresas foram obrigadas a criar aplicativos mais “inteligentes” e de uma maneira mais rápida. A fim de resolver esse problema, cada empresa criou seu próprio sistema operacional, loja de aplicativos e canais de desenvolvimento tentando obter uma maior fatia desse mercado.

“Afinal, se cada empresa tem seu sistema operacional, podemos dizer que o desenvolvimento, neste caso, será de Aplicativos Nativos?”

A resposta para essa pergunta é: “Sim”, pois os sistemas nativos são os que são criados para uso exclusivo da plataforma determinada pela empresa do ramo móvel.

Os apps nativos necessitam de desenvolvedores especialistas em cada plataforma ou até desenvolvedores que conhecem várias plataformas.

A principal vantagem é que neste caso, o desenvolvedor possui acesso a todos os recursos do dispositivo (acelerômetro, giroscópio, geolocalização, etc..) além de obter um bom desempenho da aplicação.

Como o desenvolvimento é voltado especificamente para cada plataforma, explora muito bem toda UX/UI seguindo a padronização de interface do usuário.

A principal desvantagem dos apps nativos corresponde ao custo do desenvolvimento que é bastante elevado, pois necessita de um desenvolvedor específico para cada plataforma. Além disso, o tempo de desenvolvimento e o prazo de entrega final se tornam maiores, pois todo trabalho terá que ser feito novamente para cada plataforma.

Exemplos de aplicativos nativos: Facebook Messenger, foi desenvolvido para atender recursos dos sistemas operacionais Android e IOS. WhatsApp, famoso aplicativo de mensagens instantâneas, foi vendido ao Facebook por US$ 16 bilhões e faz parte da vida de quase todas as pessoas do mundo todo.

 “E quanto ao desenvolvimento multiplataforma, para que serve?”

Quanto mais sistemas operacionais diferentes, maior será o esforço, tempo e custo necessários para desenvolver um app que atenda a todas as plataformas existentes. Nestes casos, os aplicativos Multiplataformas se destacam.

Os apps Multiplataforma tem uma grande vantagem para o desenvolvedor que é a de escrever em um único código fonte para várias plataformas. Isto é, tem um maior controle sobre o código fonte, qualquer alteração será realizada simultaneamente em todas as plataformas.

Eles acessam recursos nativos do dispositivo através de programas como o Cordova e Phonegap que servem basicamente para criar um app nativo.

Respeita também a UX/UI do sistema operacional do dispositivo, porém tem a desvantagem de utilizar um navegador embutido no aplicativo para demostrar ao usuário a aplicação.

Outra desvantagem é de que as API´s nativas demoram a ser integradas nos apps multiplataformas, portanto, as aplicações têm uma demora maior no quesito da utilização dos novos recursos dos dispositivos.

O custo do desenvolvimento dos apps multiplataforma é bem reduzido, bem como o tempo de desenvolvimento, pois em um único código é possível gerar um app nativo para diferentes plataformas.

Já que o código fonte é único, o desenvolvedor não precisa se especializar em cada plataforma, pois nessa forma não é necessário a utilização de IDE específica.

Exemplos de aplicativos Multiplataforma: Untappd, é uma rede social e de check-in para cervejeiros, onde os usuários encontram cervejarias e bares pelo mundo todo. MarketWatch oferece aos usuários notícias comerciais e informações sobre o mercado financeiro.

 Conclusão

O desenvolvimento Multiplataforma está cada dia mais evoluído, a ponto de já apresentar mais vantagens do que desvantagens. Não quer esta tecnologia seja mais vantajosa que a nativa, pois cada uma delas tem particularidades distintas. Antes de começar um desenvolvimento, deve-se analisar com maior rigor se a mesma atenderá todas as exigências da aplicação, pesar os objetivos futuros bem como a disponibilidade de recursos financeiros da empresa.

Autor Jean Carlos Wieczorek

Artigo do Seminário de Engenharia de Software – 2018/2