Google Classroom
Aumentando a produtividade com Flutter
Métricas de sucesso
98%
código mobile compartilhado
66%
redução no tamanho do código
50%
aumento na velocidade de desenvolvimento
Quando a equipe do Google Classroom viu os aumentos de produtividade que a equipe do GPay experimentou após migrar para Flutter, eles decidiram fazer a mudança. Assista ao vídeo para saber como foi.
Quando a pandemia de COVID mudou abruptamente os estudantes em todos os lugares para o aprendizado remoto, a equipe do Google Classroom se viu operando em uma escala diferente quase da noite para o dia. Em setembro de 2021, o Classroom estava apoiando milhões de novos usuários ativos mensais e precisava escalar rapidamente a equipe para atender às necessidades desses usuários em cada plataforma. Com suas equipes mobile sendo esticadas ao limite, o Google Classroom decidiu explorar soluções que reduziriam a carga sobre seus desenvolvedores.
Por que Flutter?
A equipe do Google Classroom sabia que o Flutter oferecia muitos dos recursos que eles queriam, incluindo uma única base de código suportando múltiplas plataformas. Eles avaliaram o Flutter em relação a vários critérios, incluindo seus efeitos na latência, jank, memória, tamanho do binário, acessibilidade e facilidade de contratação, e ficaram satisfeitos em ver que os benefícios da adoção do Flutter superam possíveis regressões. A equipe esperava regressões em algumas áreas como instabilidade inicial, quase inerente ao lançamento de qualquer app totalmente novo, e tamanho do binário, mas acreditava que a única base de código do Flutter permitiria que eles melhorassem isso a longo prazo. Com base nesse sucesso, a equipe recebeu luz verde para migrar seus apps existentes do Google Classroom para Flutter.
A solução deles
A equipe dividiu seu esforço em dois lançamentos, um para iOS e outro para Android. Depois de construir um app iOS completamente novo em Flutter, o Google Classroom deu seguimento com o lançamento do Android em seis meses.
A maioria da equipe nunca havia usado Flutter antes, mas a maior parte dos engenheiros do Google Classroom relatou que o desenvolvimento em Flutter foi mais fácil do que o desenvolvimento nativo. Em particular, eles consideraram o hot reload uma "mudança revolucionária" para a produtividade. Isso permitiu que eles atualizassem o app sem reabri-lo, eliminando mudanças de contexto desnecessárias, economizando tempo e reduzindo a carga mental dos desenvolvedores.
Resultados
Migrar para Flutter proporcionou ao Google Classroom uma riqueza de benefícios. Acelerou seu tempo de build incremental de vários minutos para alguns segundos, o que eles estimam que economiza uma semana completa de tempo de desenvolvedor a cada mês. A única base de código melhorou o tempo de desenvolvimento entre plataformas em "pelo menos 50%", eles relataram, e simplificou seus lançamentos.
Houve outros benefícios também. O Flutter reduziu o tamanho da base de código do Google Classroom em 54%, tornando-o mais fácil de manter. O desempenho do app também melhorou, incluindo uma redução de 62% na latência mediana de inicialização e uma redução de 63% na latência rastreada de CUJ.