Apresentado em 2013, o BeautyPlus é um dos apps de edição de fotos mais populares do mundo, usado por maquiadores, fotógrafos e usuários comuns de smartphones. Cerca de 50 milhões de pessoas usam o app todos os meses para editar e adicionar filtros a selfies, fotos e vídeos. Desenvolvido pela empresa chinesa Xiamen Meitu Technology Co., Ltd., o app (que é especialmente popular pelo conjunto para selfies) é usado para tudo, desde corrigir tons de pele e iluminar sorrisos até recursos de emagrecimento e remoção de manchas. Tudo isso apenas arrastando na tela ou com alguns cliques.
Como a empresa faz atualizações frequentes no app, precisa de um grande número de desenvolvedores. Mas, ao longo do tempo, faltou uniformidade e clareza na arquitetura subjacente. A ágil equipe precisava encontrar uma maneira de manter os desenvolvedores trabalhando para simplificar o gerenciamento do ciclo de vida e resolver problemas relacionados à atualização da interface do usuário assíncrona.
![](https://developer.android.com/static/images/distribute/stories/beautyplus-screenshot.png?authuser=19&hl=pt)
Figura 1: amostra de uma sessão de edição de fotos no BeautyPlus
O que a equipe fez
Os Componentes da arquitetura do Android forneceram as ferramentas que os desenvolvedores precisavam para tornar o código do app conciso, estável e fácil de ler para os novos engenheiros que se integrarem à equipe.
O
ViewModel
é um dos componentes que os desenvolvedores do BeautyPlus começaram a usar. Ele facilita o
processamento de lógica com atualizações de atividades e fragmentos. O ViewModel
foi criado para
armazenar e gerenciar dados relacionados à IU com reconhecimento do ciclo de vida e respeitando o
ciclo de vida de outros componentes do app.
Eles também aproveitaram o componente LiveData
,
uma classe de armazenamento de dados observáveis, que também reconhece o ciclo de vida para ajudar
a garantir que a IU corresponda ao estado dos dados. A equipe considerou esses Componentes da arquitetura
do Android fáceis de usar e não encontrou nenhum problema. Os benefícios foram percebidos rapidamente.
Resultados
Graças aos componentes de arquitetura do Android, o app BeautyPlus teve o código 5% mais enxuto e 15% mais legível. A arquitetura também foi mais unificada, economizando tempo e esforço dos desenvolvedores e tornando mais fácil para os novos desenvolvedores se familiarizarem rapidamente. Além disso, houve menos vazamentos de memória, a atualização dos dados ficou mais fácil e os desenvolvedores não precisaram mais se preocupar com a atualização da IU assíncrona.
"Quando usamos o ViewModel e o LiveData para o BeautyPlus, o código ficou mais conciso e legível, e a arquitetura do código foi unificada", diz Zheng Songyin, gerente sênior de desenvolvimento. "A operação do ciclo de vida do app foi gerenciada com segurança, e a estabilidade também melhorou."
Primeiros passos
Os componentes de arquitetura do Android estão abertos a todos os desenvolvedores. Comece a usar os Componentes da arquitetura do Android.