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
Paulo Pires
April 27, 2019
Programming
68
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
73
GraphQL 101
paulohp
0
130
Side Effects: Uma Saga até o React
paulohp
0
110
MobX: State Management made easy
paulohp
0
110
Docker: The Rise of Containers
paulohp
0
140
We Work Remotely
paulohp
2
120
Angular2
paulohp
0
250
Node.js Codelab
paulohp
1
200
NodeBR, um ano memoravel!
paulohp
0
120
Other Decks in Programming
See All in Programming
Long Living Tokens, Die, Die, Die! (or: The One Ring is Banned in Modern)
sylph01
0
390
R8 の設定見直しでアプリサイズ削減
andpad
0
240
AIが生成したコードは読むべきか?抽象化設計とコードの品質保証 / abstraction-design-and-quality
minodriven
12
7.7k
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
1.1k
Vapor Mode でアクセシビリティは 壊れないか検証した話
fuqda
1
280
AI主導のプログラミング学習アプリを作ってみた
econanringo
0
200
パスワード再設定メールのURLについて知っておこう
uyuki234
0
200
SFCで実現する病院・医療システムの動的組み立て式UI
koukimiura
1
140
flutter_test のその先へ — Flutter アプリの LLM 機能に「評価」という品質保証を
kosukesaigusa
0
140
[Dev Group Paris Octobre 26] Agentforce, SIforce, Claudeforce, Slackbot… on s'y retrouve ?
nabondance
0
120
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
3
1.3k
Compiling a real-world CLI tool to native with Static Hermes
tmikov2023
0
140
Featured
See All Featured
The agentic SEO stack - context over prompts
schlessera
0
990
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
570
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
Scaling GitHub
holman
464
140k
Statistics for Hackers
jakevdp
799
230k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
660
We Have a Design System, Now What?
morganepeng
55
8.4k
It's Worth the Effort
3n
188
29k
Six Lessons from altMBA
skipperchong
29
4.5k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
22k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
470
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!