E Desenvolvimento Mobile, o que é?

Quando olhamos os lançamentos de novos Smartphones e seus aplicativos mobile em 2017, as vezes fica difícil lembrar que não faz muito tempo que os telefones celulares serviam apenas para fazer ligações. Desde o lançamento do primeiro aparelho telefônico móvel, o DynaTAC 8000x da Motorola nos anos 1980, a inovação nos produtos se resumia em torná-lo cada vez menor e mais fácil de carregar.

Nos anos 1990 surgiu o SMS, conhecido popularmente no Brasil por “torpedo”, que servia para enviar curtas mensagens de texto e se tornaria extremamente popular nos anos 2000. Com o SMS surgiram outras inovações, como o teclado alfanumérico (e posteriormente o QWERTY); o display colorido e os toques diferentes para chamadas e mensagens que abriram caminho para o compartilhamento de imagens por MMS, a reprodução de MP3 e as câmeras integradas.

 

Porém, a maior das inovações ainda estaria por vir.

O lançamento do iPhone, que continha o sistema operacional exclusivo Apple, a tela Multi Touch, a possibilidade de usar internet Wi Fi e posteriormente a tecnologia 3G mudaram completamente a forma de usar o celular e lançaram uma nova categoria de produto: os Smartphones.

As concorrentes da Apple saíram atrás neste segmento e logo começaram a investir na criação de sistemas operacionais para rivalizar com o iPhone. Foi aí que surgiu o Android, sistema operacional móvel da Google, que graças a promessa de ser um sistema flexível e atualizável, conseguiu substituir os concorrentes da época e se tornar o sistema operacional oficial das maiores fabricantes de Smartphones da atualidade como a Samsung.

“Mas e o Desenvolvimento Mobile, onde entra?”

O Desenvolvimento Mobile já existia antes dos Smartphones, mas com a chegada deles e a criação das lojas de aplicativo Google Play (antigamente conhecida como Android Market) no Android e a App Store no iOS, isso se intensificou.

Todas as grandes empresas de tecnologia, principalmente as redes sociais, passaram a desenvolver aplicativos para os smartphones, aumentando assim a facilidade de acesso por estarem, literalmente, nas mãos dos usuários a qualquer momento. Facilidade essa que tende a aumentar: segundo um estudo da FGV a previsão é que no Brasil haja 1 smartphone em uso para cada habitante ainda em 2017, o que torna o foco nos dispositivos móveis, cada vez mais, essencial.

Quase todo mundo hoje em dia possui um aparelho celular (quando não tem dois ou mais).

Apesar de parecer fácil, o desenvolvimento de aplicativos mobile acaba sendo mais complexo e trabalhoso que o desenvolvimento web. Isso se dá pela necessidade de fazermos 2 aplicativos diferentes, sendo um para Android e um para iOS, o sistema operacional do iPhone, e também a API.

Android e iOS

Por serem sistemas completamente diferentes e criados por empresas distintas, o desenvolvimento de um aplicativo para ambos os sistemas é muito diferente. Tanto que não é raro vermos aplicativos que seriam, teoricamente, o mesmo no iPhone e num aparelho Android, mas que possuem funções diferentes entre si.

Isso acontece por uma série de motivos, mas entre eles, o principal é que os aplicativos para ambos os sistemas operacionais são desenvolvidos em diferentes linguagens.

Enquanto os aplicativos para Android são desenvolvidos majoritariamente em Java, a Apple criou uma linguagem própria para seus produtos, a Swift.

Java é uma linguagem existente desde 1995 e que vem sendo atualizada desde então, enquanto Swift foi lançada em 2014 como uma evolução da Objective-C, também da Apple. Por usarem duas linguagens diferentes, as equipes de desenvolvimento necessitam ter profissionais especialistas em ambas as linguagens.

API

O app que você usa no seu celular não é nada mais que um esqueleto. Imagine a seguinte situação: para você acessar o Facebook pelo app, você digita seu e-mail e sua senha. Essas informações precisam ser validadas em algum lugar para saber se você é você mesmo.

Agora, vamos supor que o Facebook colocou as credenciais do banco de dados (onde essas informações estão guardadas) no próprio app. Qualquer pessoa que tivesse uma cópia do aplicativo no celular, com um pouco de trabalho, poderia descobrir esse login e senha. Não é muito seguro, né? Por isso é necessária uma estrutura de comunicação entre o sistema do Facebook e o seu app.

A API (Application Programming Interface) é a parte que não vemos do aplicativo. É um conjunto de rotinas e padrões criados para comunicação do aplicativo com o sistema e até outros aplicativos.

Toda vez que você realiza uma ação, seja em um cadastro, um post, um like ou algo do tipo, o app interage com a API.

Quando falamos de desenvolvimento mobile, a maioria das pessoas pensa apenas no app instalado no celular e nem imaginam que um outro sistema tem que ser desenvolvido para processar todas as informações e requisições. Junto disso, também fazemos um painel administrativo para poder acompanhar o desempenho do sistema, cadastros, pedidos, etc.

No fim, acabamos fazendo 3-4 sistemas diferentes que trabalham em conjunto para disponibilizar aquele app que você baixa nas lojas de aplicativo.

Meu próximo texto vai ser um comparativo entre as principais diferenças do desenvolvimento Web e Mobile. Fique ligado!

Gabriel Andrade

Curioso desde criança, fascinado pelo marketing desde a faculdade e pronto pra ajudar desde sempre. Grandes desafios e melhorar a vida das pessoas é o que me faz feliz.