07 de Maio de 2018
Programação

Progressive Web Apps (PWA) são o futuro do desenvolvimento web?

Muito tem sido falado a respeito de Progressive Web Apps, ou só PWA. A ferramenta pode ser considerada como uma evolução híbrida entre páginas da web e aplicativos móveis. E é justamente por unir o melhor dos dois mundos que muita gente vem considerando PWA como o futuro do desenvolvimento web. Mas, afinal, o que essa tecnologia tem de tão incrível e no que ela ainda não é tão boa assim?

O termo PWA é usado para nomear uma nova metodologia de desenvolvimento web, mas não há necessariamente uma definição única e precisa. Sua principal funcionalidade, hoje em dia, é criar aplicações web que entreguem uma experiência parecida com a dos aplicativos aos usuários, mas sem precisar fazê-lo baixar o app e se cadastrar. Ou seja: uma barreira de entrada muito menor. Assim como um aplicativo, os PWAs aparecem com um ícone na página principal do celular e conseguem enviar notificações.

PWAs não precisam da aprovação nas App Stores?

A tecnologia permite criar um app sem precisar passar pelo processo da App Store (iOS) ou Google Play (Android). Atualmente somente o Edge / Windows 10 está forçando os PWAs a estarem na loja. Isso significa que você, enquanto programador, pode instalar aplicativos no iOS, por exemplo, sem precisar passar por processos de aprovação​.

Talvez seja por isso que, na atualização 11.3 do iOS, a Apple comunicou discretamente o lançamento de suporte para o conjunto básico de novas tecnologias por trás dos PWAs. Ainda sem muito alarde, mas sem ignorar a tendência, a empresa parece estar olhando para o futuro.

Por que PWA está sendo considerado o futuro?

A principal vantagem do uso de PWA é o custo-benefício. Desenvolver um aplicativo nativo custa muito mais do que desenvolver um progressive web app e, ao mesmo tempo, o PWA consegue entregar resultados similares​ aos de um app.

Com essa tecnologia, é possível acessar informações sobre a bateria, fazer o celular vibrar, enviar notificações, manter um ícone na página principal, usar tela cheia e, melhor ainda, operar em modo offline​. Sim, PWAs funcionam com conexões bem lentas ou sem nenhuma conexão: faz parte dos princípios da ferramenta.

Outro ponto bastante positivo é a questão da retenção de usuários. Para, de fato, usar um aplicativo, uma pessoa passa por uma série de etapas: procurar pelo app, instalá-lo, abri-lo, se cadastrar no sistema e, só depois, interagir. E, no meio desse caminho, muita gente desiste. Uma pesquisa realizada com o app DrawChat mostrou que, a cada uma dessas etapas, cerca de 20% dos usuários eram perdidos. Por outro lado, na web, poucos segundos após acessar um link, o usuário já está experimentando o produto, e é assim que funciona com PWA.

Então seria esse o fim dos aplicativos?

“Apesar de acreditar que PWA tem um grande impacto no futuro, eu não acho que ele vá desmerecer outras tecnologias”. A frase é de Matheus Costa, professor dos cursos de programação da Digital House. O que Matheus quer dizer é que, mesmo com tantas vantagens, PWA ainda tem limitações que podem ser cruciais​ dependendo do produto ou do negócio.

Com PWA não é possível, por exemplo, fazer conexões Bluetooth, nem usar o NFC do celular ou acessar os contatos. “Coisas básicas que outras aplicações podem fazer, o PWA não faz, e isso me deixa com um pouquinho de pé atrás. Nem sempre é a melhor solução”, conta. O professor dá o exemplo do acesso a outros aplicativos (como para realizar login) e do envio de notificações com a aplicação fechada. Essas funções, presentes em qualquer aplicativo nativo, ainda não podem ser executadas via PWA.

O importante é sempre estar atento ao tipo de negócio que está sendo desenvolvido. Não existe ferramenta que é a melhor para todo e qualquer produto​. Apesar de ser cauteloso a respeito do PWA, Matheus conta que está desenvolvendo uma ferramenta desse tipo, e a experiência está sendo positiva. “Para o que eu estou fazendo, é a melhor solução, porque eu englobo tudo o que eu preciso em uma única tecnologia, e consigo dar ótima experiência para o usuário, independente de onde ele tiver acesso: celular, tablet ou PC”.

Quero programar PWA: por onde começo?

Matheus explica que desenvolver PWA é basicamente uma variação do desenvolvimento de sites responsivos (aqueles que se adaptam ao tamanho das telas), somado a um documentação específica da tecnologia. Por isso, o primeiro passo para desenvolver um produto em PWA é saber fazer sites e ter conhecimento de alguma linguagem lógica.