Utilizando Compose BOM (Bill of Materials) no Android

O Google trouxe uma novidade incrível para simplificar as dependências do Compose e tornar a vida de quem já esta utilizando Compose muito mais fácil!

A algum tempo o Google trouxe o BOM (Bills of Materials) para as bibliotecas de Compose. Porém o que seria o BOM, como ele nos ajuda e como implementar no nosso projeto ? Esse artigo busca responder essas questões, então vamos lá!

O que é o BOM ?

Em resumo, o BOM é uma ferramenta que simplifica o gerenciamento de dependências, padroniza as versões das bibliotecas utilizadas e garante a compatibilidade entre elas, tornando o processo de desenvolvimento mais eficiente e confiável.

O BOM são essencialmente arquivos .pom que utilizamos no para controlar as versões de dependências diretas e transitivas.

Essa é uma funcionalidade de suporte do Gradle nos oferece uma forma eficiente de gerenciar as versões de todas as bibliotecas que utilizamos em nosso aplicativo. Com apenas uma única versão BoM especificada, podemos ter o controle de todas as dependências do nosso projeto.

Imagine como isso pode simplificar o gerenciamento de dependências! Não precisamos mais nos preocupar com a especificação individual de cada versão de biblioteca que queremos utilizar. O Gradle, com sua funcionalidade BOM, cuida disso para nós.

Agora podemos focar em desenvolver nosso aplicativo sem perder tempo com o gerenciamento complexo de dependências. Com o suporte a BOM, temos uma maneira eficaz e centralizada de controlar as versões das bibliotecas que usamos em nosso projeto Android.

Quais as vantagens no uso do BOM para as bibliotecas do Compose ?

  • Usar o BOM garante que as versões de qualquer biblioteca do Compose em seu aplicativo seja compatível.
  • O BOM ajuda você a manter seu projeto atualizado com as versões mais recentes das bibliotecas do Compose.
  • Basta atualizar o BOM e todas as bibliotecas do projeto serão atualizadas.
  • BOM funciona com catálogo de versões.

Como implementar no meu projeto ?

Para adicionarmos ao projeto é simples. Basta incluir a implementação de sua referencia no seu arquivo build.gradle, como no exemplo a seguir:

dependencies {

    // Importação do BOM
    implementation platform('androidx.compose:compose-bom:2023.06.01')

    implementation "androidx.compose.ui:ui"
    implementation "androidx.compose.ui:ui-tooling-preview"
    implementation 'androidx.compose.material3:material3'
    implementation 'androidx.activity:activity-compose'
}

Todas as bibliotecas serão incluídas automaticamente usando o BOM?

É importante ressaltar que o BOM não inclui automaticamente nenhuma biblioteca. Para utilizar as bibliotecas específicas, você deve incluí-las explicitamente, adicionando cada dependência separadamente dentro do arquivo app/build.gradle do seu projeto.

Dessa forma, você tem total controle sobre quais bibliotecas deseja utilizar em seu projeto Android. Ao adicionar cada dependência individualmente, você pode escolher as bibliotecas específicas que melhor atendem às necessidades do seu aplicativo.

Portanto, ao utilizar o BOM, lembre-se de adicionar as dependências de biblioteca necessárias no arquivo app/build.gradle. Essa abordagem oferece flexibilidade e permite personalizar as bibliotecas que você utiliza, de acordo com os requisitos do seu projeto.

Por que o BOM é a forma recomendada de gerenciar as versões das bibliotecas do Compose?

A partir de agora, as bibliotecas do Compose terão versões independentes, o que significa que seus números de versão serão incrementados em ritmos diferentes. As versões estáveis mais recentes de cada biblioteca são testadas e garantidas para funcionarem bem em conjunto. No entanto, pode ser desafiador localizar as versões estáveis mais recentes de cada biblioteca, e é aí que o BOM entra em cena para ajudá-lo a utilizar automaticamente essas versões mais recentes.

Eu sou obrigado a usar o BOM?

Não. A decisão é sua. Você ainda tem a opção de adicionar manualmente cada versão de dependência. No entanto, recomendamos o uso do BOM, pois isso facilitará o uso de todas as versões estáveis mais recentes ao mesmo tempo. Com o BOM, você terá acesso simplificado às versões atualizadas e estáveis ​​das bibliotecas do Compose, tornando mais fácil manter seu projeto atualizado e aproveitar os benefícios das melhorias mais recentes.

Lembre-se de que o objetivo principal do BOM é facilitar a sua vida como desenvolvedor, oferecendo uma maneira eficiente de gerenciar as dependências e garantir a compatibilidade entre as bibliotecas do Compose. Experimente o uso do BOM e aproveite a facilidade de utilizar as versões estáveis e atualizadas das bibliotecas do Compose de forma automática.

Quais bibliotecas estão mapeadas no BOM do Compose ?

Para saber com detalhes você pode acessar a página oficial disponibilizada pela equipe do Android:

Por que a biblioteca Compose Compiler não está incluída no BOM?

É importante observar que a biblioteca Compose Compiler `(androidx.compose.compiler) não está incluída no BOM. Isso ocorre porque essa biblioteca está vinculada às versões do plug-in do compilador Kotlin, em vez de estar diretamente relacionada às versões da biblioteca Compose. O lançamento do Compose Compiler segue uma cadência separada do restante do Compose.

Portanto, ao utilizar o Compose Compiler, é necessário garantir que você esteja usando uma versão compatível com a sua versão do Kotlin. Para ajudar nessa compatibilidade, você pode consultar o Compose to Kotlin Compatibility Map, onde encontrará a versão do Kotlin que corresponde a cada versão do plug-in do Compose.

Essa abordagem separada do Compose Compiler permite que você tenha mais flexibilidade ao atualizar as versões do Kotlin e do Compose, garantindo uma compatibilidade adequada entre eles.

Certifique-se de verificar a versão do Kotlin e utilizar a versão correta do Compose Compiler correspondente. Você pode verificar essa compatibilidade pelo link:

Conclusão:

Chegamos ao final deste artigo, onde exploramos o incrível recurso do BOM (Bill of Materials) no desenvolvimento Android para gerenciamento de dependências do Compose. Esperamos que as informações compartilhadas tenham sido úteis e esclarecedoras.

Com o uso do BOM, podemos simplificar e aprimorar significativamente o processo de gerenciamento de dependências no desenvolvimento de aplicativos Android. Ele oferece vantagens como a automatização das atualizações, garantindo que as versões utilizadas sejam estáveis e compatíveis entre si. Isso resulta em um desenvolvimento mais suave, economizando tempo e esforço.

Embora o uso do BOM seja altamente recomendado, é importante ressaltar que a escolha é sua. Você ainda tem a opção de adicionar manualmente cada dependência, se preferir. No entanto, ao optar pelo BOM, você se beneficia das atualizações automáticas e da simplificação do processo de gerenciamento de dependências.

Aproveite a oportunidade para explorar o BOM em seus projetos e descubra como ele pode tornar o desenvolvimento Android mais eficiente e agradável. Experimente essa abordagem e desfrute das vantagens de manter suas dependências atualizadas e compatíveis.

Agradeço por chegar até aqui e espero que as informações compartilhadas tenham contribuído para o seu conhecimento sobre o BOM no desenvolvimento Android. Fique à vontade para compartilhar suas experiências e resultados com essa abordagem em seus projetos.

Desejo a todos que leram esse artigo muito sucesso em suas futuras empreitadas no desenvolvimento de aplicativos Android!

Até breve!

19/07/2023