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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
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
速習iPhone Duo対応
yuukiw00w
1
590
AI × TiDD / 2026.09.05 Redmine 大阪
tokudiro
1
170
技術的負債の返済は、AI時代の複利で効く投資 — 経営としての意思決定とその遂行
curekoshimizu
0
1.5k
iOSDC Japan 2026 - Swiftで作って学ぼう!データベース自作入門
kaseken
2
170
Building an Out-of-Order CPU
latte72
1
790
海上で動くGoサーバー: goroutineとchannelでさばく航行データストリーム
atsuki_seo
0
730
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
160
thread_parallel_with_free-threaded_Python_and_NumPy.pdf
riku_sakamoto
0
340
ゲームコントローラやキーボードのファームウェアをSwiftで書く
kishikawakatsumi
1
250
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
180
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
2k
Snowflakeで業務アプリを作ろう。 Snowflakeのアプリ機能解説&実践ガイド
ayumu_yamaguchi
1
280
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
WCS-LA-2024
lcolladotor
0
830
We Are The Robots
honzajavorek
0
380
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
510
Music & Morning Musume
bryan
48
7.4k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
430
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
870
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Product Roadmaps are Hard
iamctodd
55
13k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
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!