Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GraphQL 101
Search
Paulo Pires
November 30, 2017
Programming
0
85
GraphQL 101
Paulo Pires
November 30, 2017
Tweet
Share
More Decks by Paulo Pires
See All by Paulo Pires
Introdução ao WebAssembly
paulohp
0
45
Introdução ao GraphQL
paulohp
0
47
Side Effects: Uma Saga até o React
paulohp
0
84
MobX: State Management made easy
paulohp
0
87
Docker: The Rise of Containers
paulohp
0
93
We Work Remotely
paulohp
2
96
Angular2
paulohp
0
230
Node.js Codelab
paulohp
1
170
NodeBR, um ano memoravel!
paulohp
0
95
Other Decks in Programming
See All in Programming
コードとあなたと私の距離 / The Distance Between Code, You, and I
hiro_y
0
210
ネストしたdata classの面倒な更新にさようなら!Lensを作って理解するArrowのOpticsの世界
shiita0903
1
180
alien-signals と自作 OSS で実現する フレームワーク非依存な ロジック共通化の探求 / Exploring Framework-Agnostic Logic Sharing with alien-signals and Custom OSS
aoseyuu
3
4.9k
CSC509 Lecture 07
javiergs
PRO
0
250
Introducing RemoteCompose: break your UI out of the app sandbox.
camaelon
2
270
When Dependencies Fail: Building Antifragile Applications in a Fragile World
selcukusta
0
120
TransformerからMCPまで(現代AIを理解するための羅針盤)
mickey_kubo
7
5.8k
Blazing Fast UI Development with Compose Hot Reload (droidcon London 2025)
zsmb
0
430
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
47k
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
500
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
240
他言語経験者が Golangci-lint を最初のコーディングメンターにした話 / How Golangci-lint Became My First Coding Mentor: A Story from a Polyglot Programmer
uma31
0
480
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Java REST API Framework Comparison - PWX 2021
mraible
34
8.9k
The Pragmatic Product Professional
lauravandoore
36
7k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
How STYLIGHT went responsive
nonsquared
100
5.9k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
[RailsConf 2023] Rails as a piece of cake
palkan
57
6k
GraphQLとの向き合い方2022年版
quramy
49
14k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
How to train your dragon (web standard)
notwaldorf
97
6.3k
Transcript
GraphQL 101 @caofrade
Objetivo
GraphQL Novo padrão para APIs Linguagem de Query (consulta) Open-source
mantido pela galera do Facebook
Quem usa?
MUITO, MAS MUITO CONTEUDO
HYPE? Que problema o GraphQL resolve mesmo?
REST
REST •Representational State Transfer •Arquitetura baseada em recursos: - Entidades
do sistema - Identificados por URIs - Manipulado por representações (JSON, XML, HTML)
None
None
Problemas •Overfetching - Download de dados desnecessários. •Underfetching - Acessar
mais de 1 endpoint para juntar os dados necessários.
GraphQL
Conceitos
Schema •Recursos são definidos por um sistema de tipos •Contrato
entre cliente e servidor sobre como a aplicação pode acessar os dados. •Schema Definition Language (SDL)
None
Query •No REST, múltiplos endpoints retornam estruturas de dados fixas.
•Em GraphQL, existe um único endpoint, onde o cliente determina qual dado é necessário.
None
None
None
None
Mutation •Responsável por criar e mudar dados armazenados no back-end.
None
None
Schema •Query e Mutation também precisam ser definidos no Schema
•São os pontos de entrada para as requisições enviadas pelo cliente.
None
Como Usar?
facebook.github.io/relay
apollographql.com/client
GraphQL não é magica!
E não vai matar o REST!
Obrigado @caofrade