Mobile

6 out, 2018

Cobertura InterCon18: Desenvolvimento mobile Híbrido, Nativo ou Web: quando usá-los

visualizações
Publicidade

Para dar início ao segundo dia da InterCon 2018, William Grasel convidou Juliana Chahoud para assumir o palco da sala Karen Sparck e falar sobre os principais tipos de desenvolvimento. Logo depois de se apresentar, Juliana começou a falar sobre o seu trabalho na Thoughtworks e os principais desafios enfrentados por ela na empresa.

Durante a palestra, ela falou sobre a era mobile, principais tecnologias para desenvolvimento e as principais vantagens e desvantagens de cada uma.

As principais abordagens cobertas nesta palestra, foram:

  • Apps Nativos
  • Cross-platform
  • PWA – Progressive Web Apps
  • Site responsivo ou híbrido

Para alavancar o tema, Juliana falou sobre a revolução dos smartphones, que explodiu em 2007 com a chegada do iPhone. Para exemplificar, ela apresentou uma foto com um antes e depois de um mesmo evento, mostrando um aumento impressionante na quantidade de smartphones na foto mais recente.

Segundo a palestrante, a estimativa é de que proximadamente uma a cada três pessoas no mundo tem um smartphone e trouxe dois dados impressionantes, que confirmam todo o potencial dos dispositivos móveis:

A Apple confirmou que existem mais de 2 bilhões de dispositivos com iOS ativos no mundo e há dois anos atrás o tráfego da internet ultrapassou pela primeira vez o de desktop.

Quais são as principais opções de desenvolvimento mobile?

Para responder essa questão, ela explicou que um app nada mais é do que a ponta do iceberg para um mundo de possibilidades e existem várias partes importantes no processo de desenvolvimento mobile. Uma das partes, segundo ela, é o time de UX, juntamente com as plataformas, a evolução e os serviços.

A desenvolvedora afirmou que a modalidade de Apps Nativos é a principal abordagem atualmente e citou o Swift, Kotlin e outros programas voltados para essa categoria de desenvolvimento.

Apps Nativos

Ela exemplificou uma sintaxe de um app nativo. O exemplo veio da plataforma iOS.

Vabtagens dos apps nativos:

  • Apps com alta qualidade
  • Melhor performance do app e do gráfico
  • Aceso a tecnologias recentes
  • Acesso às funcionalidades de hardware, podendo usar todos os sensores do dispositivos, como a câmera, giroscópio, GPS, etc

Desvantagens dos apps nativos

  • Mais difícil de encontrar desenvolvedores experientes
  • Alto custo, com salários mais altos por ser mais recente e pela escassez de profissionais experientes
  • Processo de release mais lento, já que depende da aprovação da Google e da Apple

Cross-platorm

Com o Cross Platform você desenvolve e as tecnologias dessa categoria fazem uma espécie de tradução para outra plataforma, adaptando as estruturas de código para que o projeto funcione em outras plataformas. Entre eles os principais programas para trabalhar com Cross Platform ela mencioniu o Xamarin, o React e o Flutter.

React Native

Entre as abordagens mais comuns, Juliana apresentou as principais e exemplificou a sintaxe de cada uma.
Apps que usam o React Native (foto)

Vantagens de usar o React Native:

  • Mais fácil encontrar desenvolvedores
  • Tendência de implementação mais rápida
  • Alguns updates sem passar por reviews da App Stor

Desvantagens da abordagem em React Nativre

  • Componentes padrão podem ser mais difíceis de implementar
  • Novas tecnologias podem demorar para estarem disponíveis
  • Podem ser mais lentas na renderização da interface
  • Algumas features não são suportadas
  • Risco do Facebook parar o desenvolvimento

Ela contou uma experiência com o React Native, no qual ela tinha que fazer uma validação de hipótese em um intervalo de 3 meses, onde apenas duas tinham experiência com desenvolvimento nativo.

PWA – Progressive Web Apps

Juliana apresentou então o conceito de PWAs, muito disseminado pela Google. Ela mostrou a versão PWA do Twitter, que é bastante parecida com o Twitter Lite. Houve um aumento considerável nos números de acesso do Twitter quando a tecnologia PWA foi adotada.

Vantagens

  • Geolocalização, notificações, uso offline, câmera
  • Performance
  • Atualizações em dia
  • Amigável para o SEO

Desvantagens

  • Limitações de funcionalidades
  • Acesso ao hardware limitado
  • Apple não suporta push notification, Touch ID, ARKit, etc
  • Apple limita em 50 MB o armazenamento de arquivos

Para encerrar sua palestra, ela apresentou as vantagens e desvantagens da última abordagem de desenvolvimento, que envovia o responsivo e o híbrido.

Responsivo ou híbrido

Vantagens

  • Baixo custo, sendo a opção mais barata
  • Mais rápida de criar
  • Mais fácil de encontrar os desenvolvedores

Desvantagens

  • Limitações
  • Baixa performance, sendo a pior
  • Integração fraca

“Não existe bala de prata. Temos de balancear cinco variáveis, sendo elas o orçamento, tempo, importância estratégica do mobile e retorno do investimento e habilidades do time. Prefira uma tech stack na qual você tenha conhecimento”.