Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Introdução ao GraphQL
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Paulo Pires
April 27, 2019
Programming
65
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
70
GraphQL 101
paulohp
0
120
Side Effects: Uma Saga até o React
paulohp
0
100
MobX: State Management made easy
paulohp
0
100
Docker: The Rise of Containers
paulohp
0
130
We Work Remotely
paulohp
2
120
Angular2
paulohp
0
250
Node.js Codelab
paulohp
1
190
NodeBR, um ano memoravel!
paulohp
0
110
Other Decks in Programming
See All in Programming
GKE アップグレード前に知っておきたい Blue/Green と PDB の関係
stkk
0
160
新人はどこまで自力でやり、どこからAIに頼るべきか/エンジニア育成に向き合う_先輩たちの悩みと知見共有会
toppan_digital_dev
1
600
AGENTS.md Is Not Enough:Build Skills, Don't Download Them
lx_t
0
110
Security issues being discussed on Web Platforms
petamoriken
0
750
App Intentsのビルドプロセスを支える技術
kntkymt
0
260
AI に Inclusive UI を書かせよう — Design Rules Skill で Compose UI を作り直す
theoriatec2024
1
470
思考垂れ流し開発 ~音声入力 × AIエージェント × 開発ハーネスによる試行錯誤~
npostring
0
1.1k
自分的「カンファレンスの楽しみ方」
syumai
0
200
巨大モノリシックアプリ モダン化大作戦
ktcryomm
0
860
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
9
3.9k
[DroidKaigi 2026] Bring your own phones to Gradle Managed Devices
f2lk
0
110
LoopHub - ローカルで動く GitHub で、AI と共同開発
jugyo
1
500
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
6.3k
Navigating Weather and Climate Data
rabernat
0
510
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.9k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Unsuck your backbone
ammeep
672
58k
Believing is Seeing
oripsolob
1
210
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
500
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Thoughts on Productivity
jonyablonski
76
5.4k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
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!