Aprendendo GraphQL: Busca Declarativa de Dados para Aplicações Web Modernas

Aleksandr Shitik
Aleksandr Shitik

Escrevo meus próprios posts e livros, e faço resenhas de filmes e livros. Especialista em cosmologia e astronomia, TI, produtividade e planejamento.

Aprendendo GraphQL: Busca Declarativa de Dados para Aplicações Web Modernas
Алекс Бэнкс, Ева Порселло
Gêneros: Programação
Ano de publicação: 2019
Ano de leitura: 2020
Minha avaliação: Boa
Número de leituras: 1
Total de páginas: 240
Resumo (páginas): 10
Idioma original da publicação: Inglês
Traduções para outros idiomas: Russo, Chinês

Descrição geral do livro

O livro é de extensão reduzida, composto por apenas 7 capítulos. Inclui algumas imagens, embora não muitas. É bastante fácil de ler e o conteúdo é assimilado rapidamente.

Resumo breve dos capítulos

Os dois primeiros capítulos são puramente teóricos. Eles descrevem o que é GraphQL, quando e por quem foi inventado, e onde pode ser utilizado. Também discutem suas vantagens e desvantagens em comparação com REST, sua sintaxe, princípios e outros aspectos relacionados. Um capítulo inteiro desses dois é dedicado à teoria dos grafos. Aborda vértices, nós, a história da teoria dos grafos, as pontes de Königsberg, ciclos eulerianos, exemplos de grafos na programação (como a árvore DOM mais simples em um navegador) e informações semelhantes.

Por volta da página 50 (de um total de 240), o livro se aprofunda no GraphQL. Inicialmente, ele é comparado ao SQL. Em seguida, são revisadas ferramentas e plataformas online onde é possível praticar com GraphQL. A sintaxe e os principais tipos de consultas são discutidos em detalhes, assim como os fragmentos, que permitem reutilizar partes do código.

O próximo capítulo aborda o Esquema do GraphQL. Aqui, os tipos de dados, sua definição e uso são descritos em detalhes. Além disso, é coberta a validação, bem como as relações (um para um, um para muitos, muitos para muitos). Interfaces e argumentos também são explicados com certo detalhamento, assim como a filtragem e a paginação.

O capítulo sobre a API do GraphQL foca em um exemplo prático de trabalho com fotos usando GraphQL e JavaScript. Ele descreve todo o processo, desde a instalação do apollo-server e apollo-server-express até a conexão com o MongoDB. As configurações e ajustes básicos de todo o software instalado são detalhados.

Enquanto o capítulo anterior se concentrava na construção do servidor, este se volta para o cliente (dentro do mesmo exemplo de upload de imagens). O Apollo Client é escolhido como a implementação do cliente. Para tornar a tarefa mais complexa, o autor demonstra como integrar o GraphQL com o React, e, para um exemplo mais realista, são utilizados autenticação e cache.

O último capítulo conclui o projeto iniciado anteriormente e introduz conceitos ainda mais avançados, como assinaturas e upload de arquivos em tempo real. Também é dada atenção às questões de segurança: problemas relacionados à profundidade e complexidade das consultas são destacados.

Opinião

GraphQL é uma boa alternativa à abordagem popular REST. Este livro introduz o novo padrão de transferência de dados utilizando a linguagem de consulta GraphQL como exemplo. Ele fornece informações introdutórias sobre por que é necessário, quais problemas resolve e um pouco sobre a teoria dos grafos, antes de mergulhar nos detalhes e na sintaxe do GraphQL. Minha introdução ao GraphQL começou com este livro, e não encontrei dificuldades ao lê-lo. O livro me pareceu bastante compreensível e direto, por isso posso recomendá-lo a outras pessoas.

Вверх