Desenvolvimento iOS com Firebase
Desenvolvimento iOS com Firebase
Crie aplicativos para iOS utilizando SwiftUI 2.0 e Firebase.
Sobre o Livro
Crie aplicativos para iOS utilizando SwiftUI 2.0 e serviços do Firebase, como Authentication, Firestore, Remote Config e Storage.
O público alvo desse livro são desenvolvedores com conhecimento em programação orientada a objetos, que desejam conhecer e desenvolver aplicativos para iOS utilizando serviços do Google Firebase.
Todos os aplicativos desenvolvidos aqui serão criados utilizando a linguagem Swift, criada pela Apple. Ter conhecimento nessa linguagem é desejável, mas a estrutura didática do livro considera que o leitor não tem nenhuma experiência prévia. Por isso, alguns conceitos importantes sobre Swift serão apresentados ao longo do livro, principalmente aqueles mais utilizados para o desenvolvimento de aplicativos para iOS.
Apesar desse livro ser voltado a conceitos e arquiteturas não triviais no âmbito do desenvolvimento de aplicativos para iOS, ele não considera como requisito um conhecimento prévio do leitor nesse assunto. O mesmo se aplica ao Google Firebase. Por isso, seu conteúdo passará por assuntos básicos até chegar ao seu propósito final.
O capítulo 2 oferece uma visão geral de como o processo de desenvolvimento de um app iOS acontece.
No capítulo 3, o leitor terá uma explicação inicial sobre os serviços do Firebase que serão utilizados nesse livro, para integrar nas aplicações a serem desenvolvidas para iOS.
O capítulo 4 é uma introdução a alguns conceitos da linguagem Swift, principalmente aqueles que serão mais utilizados nos exemplos que serão desenvolvidos nesse livro.
No capítulo 5 é criado o primeiro aplicativo, já utilizando SwiftUI e as facilidades do Xcode Preview. Também são introduzidos conceitos como State
e Binding
, que facilitam a atualização da interface gráfica através de eventos.
O capítulo 6 inicia um novo projeto onde são apresentadas técnicas modernas para a criação de um aplicativo para consumir serviços REST autenticação OAuth utilizando o Alamofire. Tudo construído com SwiftUI, mostrando o que ele tem de melhor, com a utilização de viewModels para a representação dos dados a serem atualizados na interface gráfica. Esse mesmo projeto será continuado no capítulo 7, onde será introduzida a navegação entre view dentro do app, assim como o consumo de outras operações do serviço REST.
O capítulo 8 apresenta como construir um app para se registrar e receber mensagens do Firebase Cloud Messaging, um serviço capaz de enviar notificações a dispositivos móveis do Google.
No capítulo 9 será mostrado como autenticar usuários com o Firebase Authentication de forma fácil e descomplicada.
A informação do usuário autenticado será utilizada para definir as regras de segurança de acesso aos dados que ele criar no Firestore, um banco de dados não-relacional com sincronismo realtime, como será visto no capítulo 10.
No capítulo 11 será visto outro serviço do Firebase, o Analytics, capaz de coletar eventos das ações do usuário dentro app, para obtenção de dados sobre seu comportamento e utilização de funcionalidades.
O capítulo 12 introduz o Firebase Remote Config, que possibilita a alteração de partes do aplicativo mediante variáveis de configuração que podem ser alteradas no console do Firebase.
Finalmente, no capítulo 13 é apresentado o Firebase Storage, que permite o armazenamento de objetos e arquivos no Firebase, utilizando as mesmas regras de segurança de acesso adotadas no Firestore. Com isso o usuário pode guardar seus arquivos de forma segura.
A implementação utilizando o SDK do Firebase faz com que o trabalho de upload e download das fotos seja bem simples e totalmente aderente à arquitetura adotada no restante das implementações realizadas nesse livro.
Sumário
-
1 - Introdução
- 1.1 - A quem se destina esse livro
- 1.2 - O que é necessário para desenvolver aplicativos para iOS
- 1.3 - Estrutura didática do livro
- 1.4 - Capítulos do livro
-
2 - Como desenvolver aplicativos para o iOS
- 2.1 - iOS Simulators
- 2.2 - Xcode preview
- 2.3 - Conclusão
-
3 - Sobre o Google Firebase
- 3.1 - Firebase Cloud Messaging
- 3.2 - Firebase Authentication
- 3.3 - Firebase Analytics
- 3.4 - Firebase Remote Config
- 3.5 - Firebase Cloud Firestore
- 3.6 - Firebase Storage
- 3.7 - Conclusão
-
4 - Conceitos básicos de Swift
- 4.1 - Sobre o Swift
- 4.2 - Documentação sobre Swift
- 4.3 - O Playground do Xcode
- 4.4 - Hello World em Swift
- 4.5 - Criando o primeiro Playground no Xcode
- 4.6 - Declaração e tipos de variáveis
- 4.7 - Declarando constantes
- 4.8 - Trabalhando com String
- 4.9 - Declarando variáveis com valores opcionais
- 4.10 - Arrays e Dictionaries
- 4.11 - Controle de fluxo com if e switch
- 4.12 - Estruturas de repetição
- 4.13 - Funções
- 4.14 - Objetos e classes
- 4.15 - Inicialização da classe
- 4.16 - Herança
- 4.17 - Protocol
- 4.18 - Deinitialization
- 4.19 - Automatic Reference Counting - ARC
- 4.20 - Enum
- 4.21 - Tratamento de erros
- 4.22 - Structures
- 4.23 - Closures
- 4.24 - Conclusão
-
5 - Hello World com SwiftUI
- 5.1 - Criando o projeto
- 5.2 - Entendendo a estrutura do projeto
- 5.3 - Construindo uma interface básica com SwiftUI
- 5.4 - Utilizando @State
- 5.5 - Criando o modelo de produtos
- 5.6 - Criando a tela de cadastro do produto
- 5.7 - Salvando o produto
- 5.8 - Exibindo o produto salvo
- 5.9 - Refatorando as views e utilizando @Binding
- 5.10 - Criando o campo para o preço do produto
- 5.11 - Conclusão
-
6 - Consumindo serviços REST com Alamofire
- 6.1 - O provedor de serviços de vendas
- 6.2 - Criando e preparando o projeto
- 6.3 - Criando as classes de modelo
- 6.4 - Criando o cliente REST com o Alamofire
- 6.5 - Exibindo a lista de produtos
- 6.6 - Conclusão
-
7 - Criando navegação com o NavigationView e consumindo outras operações do serviço REST
- 7.1 - Adicionando navegação ao aplicativo
- 7.2 - Criando um novo produto
- 7.3 - Excluindo um produto
- 7.4 - Visualizando e alterando os detalhes de um produto
- 7.5 - Conclusão
-
8 - Recebendo mensagens via Firebase Cloud Messaging
- 8.1 - O que é Firebase Cloud Messaging
- 8.2 - Arquitetura do projeto iOS com FCM
- 8.3 - Criando o novo projeto no Xcode
- 8.4 - Adicionando o Firebase ao projeto criado
- 8.5 - Configurando o FCM para funcionar com o APNs
- 8.6 - Registrando no FCM para receber notificações
- 8.7 - Recebendo mensagens do FCM
- 8.8 - Conclusão
-
9 - Autenticando usuários com Firebase Authentication
- 9.1 - O que o Firebase Authentication
- 9.2 - Arquitetura do projeto
- 9.3 - Criando o novo projeto no Xcode
- 9.4 - Criando o novo projeto no Firebase
- 9.5 - Adicionando as bibliotecas do Firebase Authentication ao projeto
- 9.6 - Inicializando o Firebase
- 9.7 - Criando o viewModel de autenticação
- 9.8 - Configurando o Firebase Authentication
- 9.9 - Criando a tela de login
- 9.10 - Criando o fluxo de autenticação do app
- 9.11 - Conclusão
-
10 - Persistindo dados com o Firestore
- 10.1 - Entendendo a hierarquia de dados no Firestore
- 10.2 - Arquitetura do projeto
- 10.3 - Criando o modelo de produtos
- 10.4 - Especificando as regras de segurança do Firestore
- 10.5 - Construindo o índice de pesquisa no Firestore
- 10.6 - Criando o viewModel da lista de produtos
- 10.7 - Criando a view da lista de produtos
- 10.8 - Criando o viewModel de criação de produtos
- 10.9 - Construindo a view de criação de produtos
- 10.10 - Exibindo a tela de criação de produtos
- 10.11 - Testando a criação e listagem de produtos
- 10.12 - Excluindo produtos
- 10.13 - Criando o viewModel de edição de produtos
- 10.14 - Construindo a view de edição de produtos
- 10.15 - Testando a sincronização automática da lista de produtos
- 10.16 - Conclusão
-
11 - Entendendo o comportamento da aplicação e dos usuários com Firebase Analytics
- 11.1 - Analisando o dashboard do Firebase Analytics
- 11.2 - Preparando o projeto para o Firebase Analytics
- 11.3 - Gerando eventos do usuário
- 11.4 - Visualizando os eventos no Firebase Analytics
- 11.5 - Conclusão
-
12 - Alterando o comportamento da aplicação com o Firebase Remote Config
- 12.1 - Preparando o app para o Firebase Remote Config
- 12.2 - Buscando as configurações do Remote Config
- 12.3 - Mudando o comportamento do app com o Firebase Remote Config
- 12.4 - Criando o parâmetro no console do Firebase Remote Config
- 12.5 - Conclusão
-
13 - Salvando fotos dos produtos no Firebase Storage
- 13.1 - Estrutura e organização do Firebase Storage
- 13.2 - Criando as regras de segurança de acesso
- 13.3 - Preparando o projeto
- 13.4 - Alterando o modelo de produtos
- 13.5 - Criando o view model para a lista de produtos
- 13.6 - Adaptando a lista de produtos para exibir sua imagem
- 13.7 - Criando a view para escolher a foto com o PHPickerViewController
- 13.8 - Salvando o produto com sua foto
- 13.9 - Alterando o produto com sua foto
- 13.10 - Conclusão
A garantia Leanpub incondicional, sem riscos, de 100% de satisfação
Durante 60 dias da data de compra você pode solicitar o reembolso total de qualquer compra Leanpub, em dois cliques. Nós processamos os reembolsos manualmente, então eles podem demorar alguns dias para aparecer. Veja os 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. Portanto, se vendermos 5000 cópias não reembolsadas do seu livro por $20, você ganhará $80,000.
(Sim, alguns autores já ganharam muito mais do que isso no Leanpub.)
Na verdade, os autores ganharammais de 13 milhões de dólares escrevendo, publicando e vendendo no Leanpub.
Saiba mais sobre escrever no Leanpub
Atualizações grauitas. Sem DRM.
Se você compra um livro da Leanpub, você recebe atualizações gratuitas enquanto o autor atualizar o livro! Muitos autores utilizam a Leanpub para publicar os seus livros em andamento, enquanto eles estão os escrevendo. Todos os leitores recebem atualizações gratuitas, não importa quando ou por quanto eles compraram o livro (até mesmo de graça).
A maioria dos livros Leanpub estão disponíveis em PDF (para computadores) e EPUB (para telefones, tablets, e Kindle). Os formatos que um livro inclui são exibidos no top direito dessa página.
Por último, livros Leapub não têm nenhuma proteção anti-cópias DRM sem sentido, então você pode facilmente lê-los em qualquer dispositivo suportado.
Aprenda mais sobre os formatos de ebook da Leanpub e aonde lê-los