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
Introdução ao GraphQL
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Paulo Pires
April 27, 2019
Programming
60
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Introdução ao GraphQL
Paulo Pires
April 27, 2019
More Decks by Paulo Pires
See All by Paulo Pires
Introdução ao WebAssembly
paulohp
0
62
GraphQL 101
paulohp
0
120
Side Effects: Uma Saga até o React
paulohp
0
97
MobX: State Management made easy
paulohp
0
100
Docker: The Rise of Containers
paulohp
0
130
We Work Remotely
paulohp
2
110
Angular2
paulohp
0
240
Node.js Codelab
paulohp
1
190
NodeBR, um ano memoravel!
paulohp
0
110
Other Decks in Programming
See All in Programming
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
300
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
750
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
300
トークンをケチるな、設計しろ:GitHub Copilotを賢く使うコンテキスト戦略
ochtum
0
160
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
140
Contextとはなにか
chiroruxx
1
370
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
260
Lessons from Spec-Driven Development
simas
PRO
0
220
スマートグラスで並列バイブコーディング
hyshu
0
260
Snowflake Summitでの新機能 CoCo / CoWork / snowflake-summit-2026-overall-what-new-coco
tatsuhiro
1
180
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
230
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
13k
Featured
See All Featured
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
200
New Earth Scene 8
popppiees
3
2.4k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
240
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
310
Marketing to machines
jonoalderson
1
5.5k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
150
So, you think you're a good person
axbom
PRO
2
2.1k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
210
Practical Orchestrator
shlominoach
191
11k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
210
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Transcript
INTRODUÇÃO ao GraphQL @caofrade
Objetivo @caofrade
Novo padrão para API Linguagem de Query Open Source mantido
pelo Facebook @caofrade
Quem usa? @caofrade
@caofrade MUITO CONTEÚDO DISPONÍVEL
@caofrade HYPE?? Qual problema GraphQL resolve mesmo???
@caofrade REST
•Representational State Transfer •Arquitetura baseada em recursos: 1. Entidades do
sistema 2. Identificados por URIs 3. Manipulados por representações (JSON, XML, HTML) @caofrade REST
None
None
@caofrade Problemas •Over-fetching 1. Download de dados desnecessários •Under-fetching: 1.
Acessar mais de 1 endpoint para juntar os dados necessários.
@caofrade
@caofrade CONCEITOS
•Recursos são definidos por um sistema de tipos •Contrato entre
front-end e back-end sobre como a aplicação acessa pode acessar os dados •Schema Definition Language (SDL) @caofrade SCHEMA
None
•No REST, varios endpoints retornam estruturas de dados fixas •Em
GraphQL, existe um único endpoint, onde o cliente determina qual dado é necessário. @caofrade QUERY
None
None
None
None
•Responsável por criar e atualizar dados no back-end. @caofrade MUTATION
None
None
•Query e Mutations precisam ser definidos no Schema! •São os
pontos de entrada das requisições para o backend @caofrade SCHEMA
None
•Um Resolver é uma função que resolve um valor para
um para um Type ou campo em um Schema. •Todos campos em todos Types são servidos por uma função chamada Resolver. @caofrade RESOLVER
None
@caofrade DEMO
@caofrade OBRIGADO!