Por Dentro do Jetpack Compose (Edição em Português do Brasil)
Por Dentro do Jetpack Compose (Edição em Português do Brasil)
Sobre o Livro
Este livro explora o funcionamento interno do Jetpack Compose, a novíssima biblioteca criada pelo Google e pela equipe do Android que se tornará o futuro da UI do Android. Dedicar tempo agora para aprender profundamente sobre seus aspectos internos proporcionará habilidades poderosas para escrever aplicativos Android modernos e eficientes no futuro.
Se você está interessado em outros casos de uso do Jetpack Compose além do Android, este livro também tem conteúdo para você. Jetpack Compose internals é muito focado em explorar o compilador e o tempo de execução de uma perspectiva genérica, tornando a experiência geral bastante agnóstica em relação à plataforma-alvo. O livro também fornece um capítulo dedicado a diversos casos de uso do Jetpack Compose, que apresenta alguns exemplos realmente interessantes em código.
Jetpack Compose e Android são marcas registradas da Google LLC e este livro não é endossado ou afiliado ao Google de qualquer forma.
Índice
-
Prelúdio
- Por que ler este livro
- Sobre o que este livro não trata
- Por que escrever sobre o funcionamento interno
- Mantenha o código-fonte por perto
- Trechos de código e exemplos
-
1. Funções Composable
- O significado das funções Composable
- Propriedades das funções Composable
- Contexto de chamada
- Idempotente
- Livre de efeitos colaterais não controlados
- Reiniciável
- Execução rápida
- Memoização posicional
- Similaridades com funções suspend
- A cor das funções Composable
- Tipos de função Composable
-
2. O Compiler do Compose
- Um Plugin do Compilador Kotlin
- Anotações do Compose
- Registrando extensões do Compilador
- Versão do compilador Kotlin
- Análise estática
- Checkers Estáticos
- Verificações de chamadas
- Verificações de tipo
- Verificações de declaração
- Supressão de diagnóstico
- Verificação da versão do runtime
- Geração de código
- O IR do Kotlin
- Lowering
- Inferindo estabilidade de classe
- Habilitando live literals
- Memorização de lambda no Compose
- Injetando o Composer
- Propagação de comparação
- Parâmetros padrão
- Geração de grupos de fluxo de controle
- Klib e geração de decoy
-
3. O runtime do Compose
- A slot table e a lista de mudanças
- A slot table em profundidade
- A lista de mudanças
- O Composer
- Alimentando o Composer
- Modelando as Alterações
- Otimizando quando escrever
- Grupos de escrita e leitura
- Lembrando valores
- Escopos de recomposição
- SideEffects no Composer
- Armazenando CompositionLocals
- Armazenando informações de origem
- Vinculando Composições via CompositionContext
- Acessando o snapshot atual do Estado
- Navegando pelos nós
- Mantendo leitor e escritor sincronizados
- Aplicando as mudanças
- Performance ao construir a árvore de nós
- Como as mudanças são aplicadas
- Anexando e desenhando os nós
- Composition
- Criando uma Composition
- O processo de Composição inicial
- Aplicando mudanças após a Composition inicial
- Informações adicionais sobre a Composition
- O Recompositor
- Iniciando o Recompositor
- Processo de recomposição
- Recomposição concorrente
- Estados do Recomposer
-
4. Compose UI
- Integrando UI com o runtime do Compose
- Mapeando alterações agendadas para mudanças reais na árvore
- Composition do ponto de vista do Compose UI
- Subcomposição do ponto de vista do Compose UI
- Refletindo mudanças na UI
- Diferentes tipos de Appliers
- Materializando um novo LayoutNode
- Fechando o círculo
- Materializando uma mudança para remover nós
- Materializando uma mudança para mover nós
- Materializando uma mudança para limpar todos os nós
- Medição no Compose UI
- Políticas de medição
- Medidas intrínsecas
- Restrições de Layout
- LookaheadLayout
- Modelando cadeias de modificadores
- Definindo modificadores no LayoutNode
- Como o LayoutNode processa novos modificadores
- Desenhando a árvore de nós
- Semântica no Jetpack Compose
- Notificando sobre mudanças semânticas
- Árvores semânticas mescladas e não mescladas
-
5. Sistema de snapshot de estado
- O que é snapshot state
- Sistemas de controle de concorrência
- Multiversion concurrency control (MCC ou MVCC)
- O Snapshot
- A árvore de snapshots
- Snapshots e threading
- Observando leituras e escritas
- MutableSnapshots
- GlobalSnapshot e snapshots aninhados
- StateObjects e StateRecords
- Lendo e escrevendo estado
- Removendo ou reutilizando registros obsoletos
- Propagação de mudanças
- Mesclando conflitos de escrita
-
6. Efeitos e manipuladores de efeito
- Introduzindo efeitos colaterais
- Efeitos colaterais no Compose
- Do que precisamos
- Manipuladores de Efeito
- Efeitos não suspensos
- Efeitos suspensos
- Adaptadores para bibliotecas de terceiros
-
7. Casos de uso avançados do Compose Runtime
- Compose runtime vs Compose UI
- (Re-) Introduzindo composition
- Composição de gráficos vetoriais
- Construindo a árvore de imagem vetorial
- Integrando a composição vetorial no Compose UI
- Gerenciando DOM com Compose
- Composição independente no navegador
- Conclusão
Garantia de 60 Dias de 100% de Satisfação da Leanpub
Em até 60 dias após a compra, você pode obter um reembolso de 100% em qualquer compra da Leanpub com apenas dois cliques.
Tecnicamente, isso é arriscado para nós, já que você terá os arquivos do livro ou curso de qualquer maneira. Mas estamos tão confiantes em nossos produtos e serviços, e em nossos autores e leitores, que oferecemos com satisfação uma garantia de devolução total do dinheiro para tudo o que vendemos.
Você só pode descobrir o quanto algo é bom experimentando, e por causa da nossa garantia de 100% de devolução do dinheiro, literalmente não há risco em tentar!
Então, não há motivo para não clicar no botão Adicionar ao Carrinho, certo?
Ver termos completos...
Ganhe $8 em uma compra de $10, e $16 em uma compra de $20
Pagamos 80% de royalties em compras de $7,99 ou mais, e 80% de royalties menos uma taxa fixa de 50 centavos em compras entre $0,99 e $7,98. Você ganha $8 em uma venda de $10, e $16 em uma venda de $20. Então, se vendermos 5000 cópias não reembolsadas do seu livro por $20, você ganhará $80.000.
(Sim, alguns autores já ganharam muito mais que isso na Leanpub.)
Na verdade, os autores já ganharammais de $14 milhões escrevendo, publicando e vendendo na Leanpub.
Saiba mais sobre como escrever na Leanpub
Atualizações Gratuitas. Livre de DRM.
Ao comprar um livro da Leanpub, você recebe atualizações gratuitas enquanto o autor continuar atualizando o livro! Muitos autores usam o Leanpub para publicar seus livros em desenvolvimento, enquanto ainda estão escrevendo. Todos os leitores recebem atualizações gratuitas, independentemente de quando compraram o livro ou quanto pagaram (incluindo gratuitos).
A maioria dos livros da Leanpub está disponível em PDF (para computadores) e EPUB (para celulares, tablets e Kindle). Os formatos incluídos em um livro são mostrados no canto superior direito desta página.
Por fim, os livros da Leanpub não possuem nenhuma proteção DRM sem sentido, então você pode lê-los facilmente em qualquer dispositivo compatível.
Saiba mais sobre os formatos de ebook da Leanpub e onde lê-los