Os usuários esperam ter uma boa experiência com o app. As falhas podem levar ao aumento de avaliações ruins, a desinstalações e até mesmo prejudicar a percepção sobre a marca. Em conversas com a comunidade, ficamos sabendo que um dos principais motivos da adoção do Kotlin é a maior segurança do código. Nesta postagem, compartilharei como o Kotlin melhorou a estabilidade do código de alguns de nossos parceiros. Além disso, vamos analisar os resultados de algumas estatísticas da Google Play Store para ver se existe uma correlação entre o uso do Kotlin e o número de falhas (spoiler: sim, existe).
Qualidade dos apps A qualidade de um app não afeta apenas a experiência do usuário. Vários outros elementos são afetados por um alto número de falhas:
Detecção do app pelos dispositivos — As recomendações da Google Play Store são compostas por um misto de curadoria humana e cálculos algorítmicos, nos quais a qualidade é um dos principais fatores.Marca — O desempenho de um produto pode afetar suas classificações e avaliações, o que pode ter um impacto sobre a percepção da marca.Número maior de usuários (envolvidos) — Ter um tráfego orgânico maior e uma melhor percepção da marca pode levar à maior aquisição e retenção de usuários, o que também pode afetar o envolvimento e reduzir as métricas de afunilamento.Os apps criados com o Kotlin têm 20% de menos de probabilidade de falhas. Qual é o papel do Kotlin nisso tudo? Analisamos os 1.000 apps de maior destaque no Google Play e notamos que os apps que usam o Kotlin apresentam 20% a menos de falhas por usuário do que os que não o utilizam.
Um exemplo disso vem da equipe de engenharia do Swiggy, que tem 74% do código em Kotlin – eles observaram uma redução de 50% nas falhas desde a mudança do desenvolvimento de novos recursos para o Kotlin.
Como evitar NullPointerExceptions A principal causa de falhas no Google Play são os NullPointerExceptions. Em 2018, a equipe do Google Home começou a escrever todos os novos recursos em Kotlin e observou uma redução de 33% nas falhas de ponteiro nulo ao longo de um ano.
O Google Home teve uma redução de 33% em NullPointerExceptions Para evitar NullPointerExceptions, é preciso assegurar que as referências a objetos com as quais você está trabalhando não sejam nulas antes de chamar métodos nelas ou tentar acessar seus assinantes. No Kotlin, a nulidade faz parte do sistema de tipos. Por exemplo, uma variável precisa ser declarada desde o início como anulável ou não anulável. Ao tornar a nulidade uma parte do sistema de tipos, você não precisa depender da memorização e do conhecimento da base do código nem de avisos de tempo de compilação (se você anotar os campos/parâmetros com @Nullable). Em vez disso, a nulidade é imposta, portanto, você receberá erros de tempo de compilação, não apenas avisos. Para ver como lidar com a nulidade, confira esta página .
Como evitar problemas comuns Nós, desenvolvedores, introduzimos muitos problemas sem perceber, e vários deles podem ser bastante sutis e difíceis de investigar. Veja a seguir alguns desses problemas que são evitados com o uso do Kotlin.
hashCode() e equals() Se dois objetos forem iguais, então seus hashcodes deverão ser iguais. Mesmo assim, é muito comum esquecer de implementar um desses métodos ou de atualizá-los quando novas propriedades são adicionadas à classe. Ao trabalhar com classes cuja função é apenas manter os dados, use as classes de dados do Kotlin. Com as classes de dados, hashCode() e equals() são gerados para você pelo compilador e, portanto, atualizados automaticamente quando há uma mudança nas propriedades da classe.
Igualdade estrutural versus referencial Dois objetos são estruturalmente iguais (têm conteúdos equivalentes) ou referencialmente iguais (seus ponteiros são os mesmos)? Na linguagem de programação Java, para os primitivos, você sempre usaria ==. Portanto, um erro comum é chamar == (igualdade referencial) também para os objetos, quando, na verdade, o correto é verificar se eles são estruturalmente iguais (verificação feita pela chamada a equals()). Primeiro, o Kotlin não tem tipos primitivos . Ele usa classes como Int ou String, o que significa que não é mais preciso fazer essa diferenciação entre objetos e tipos primitivos, já que todos são objetos. Em segundo lugar, o Kotlin definiu == para a igualdade estrutural e === para a igualdade referencial, portanto, não será preciso verificar a igualdade referencial quando isso não for necessário .
Quando if else if else if else não é suficiente Ao trabalhar com enums, geralmente é preciso garantir que todos os casos possíveis sejam cobertos. Isso leva ao uso de uma chave ou de uma cadeia de if elses. Quando você modifica o enum para adicionar um novo valor, precisa verificar manualmente cada snippet de código no qual está usando o enum e assegurar que esteja lidando com o novo caso. Mas esse é um processo propenso a erros. No Kotlin, você pode usar o compilador para isso, se estiver usando when como uma expressão: você receberá um erro do compilador se não estiver cobrindo todas as ramificações possíveis.
Conclusão A estabilidade de um app é importante para os usuários e para a sua marca. Comece a usar o Kotlin para reduzir as taxas de falha, manter os usuários satisfeitos e ficar sempre em uma boa colocação na retenção e aquisição, mantendo uma classificação alta dos apps.
Saiba mais sobre como você pode criar apps melhores com o Kotlin e leia nossos estudos de casos para ver como os desenvolvedores se beneficiaram com o Kotlin. Para dar seus primeiros passos no Kotlin , uma das linguagens mais amadas do mundo , confira nossa página Primeiros passos .
3 comentários :
Sim, nos ajudou muito com o aplicativo Yoju. Obrigado
Uma das melhores plataformas de apostas desportivas online é a PariPesa, digna da melhor indexação do Google. O Google precisa prestar mais atenção a sites grandes
Web Core Vitals faz maravilhas, visite meu site. O melhor site de apostas desportivas e casino online em Portugal 365. Páginas de carregamento rápido e jogabilidade divertida
Postar um comentário