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
Do RPC ao GraphQL
Search
Alan Michel Willms Quinot
January 14, 2019
Programming
0
46
Do RPC ao GraphQL
Alan Michel Willms Quinot
January 14, 2019
Tweet
Share
More Decks by Alan Michel Willms Quinot
See All by Alan Michel Willms Quinot
JWT
alanwillms
0
59
Webpack ❤ Vue.js
alanwillms
0
29
PHP – principais novidades do 5.3 ao 5.6
alanwillms
0
60
Other Decks in Programming
See All in Programming
AIと一緒にレガシーに向き合ってみた
nyafunta9858
0
180
CSC307 Lecture 01
javiergs
PRO
0
690
Fragmented Architectures
denyspoltorak
0
150
CSC307 Lecture 06
javiergs
PRO
0
680
Oxlint JS plugins
kazupon
1
840
AIによる高速開発をどう制御するか? ガードレール設置で開発速度と品質を両立させたチームの事例
tonkotsuboy_com
7
2.1k
Data-Centric Kaggle
isax1015
2
770
AI & Enginnering
codelynx
0
110
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
260
Amazon Bedrockを活用したRAGの品質管理パイプライン構築
tosuri13
4
260
「ブロックテーマでは再現できない」は本当か?
inc2734
0
900
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
220
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
42
2.9k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
84
Six Lessons from altMBA
skipperchong
29
4.1k
[SF Ruby Conf 2025] Rails X
palkan
1
740
BBQ
matthewcrist
89
10k
Un-Boring Meetings
codingconduct
0
200
WCS-LA-2024
lcolladotor
0
450
For a Future-Friendly Web
brad_frost
182
10k
Designing Experiences People Love
moore
144
24k
Producing Creativity
orderedlist
PRO
348
40k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.4k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
320
Transcript
None
Era uma vez….
XML é supimpa! • RPC: Remote Procedure Call ◦ Via
HTTP • SOAP: Service Oriented Architecture Protocol ◦ Via HTTP, FTP, SMTP e outros
None
None
REST: Representational State Transfer • URL representa um recurso •
Métodos HTTP representam ações
Método URL Descrição GET /pessoas Lista todos GET /pessoas/42 Mostra
um registro POST /pessoas Cria um registro PATCH ou PUT /pessoas/42 Atualiza um registro DELETE /pessoas/42 Exclui um registro
CHEGUEI!
JSON: JavaScript Object Notation • Mais legível • Compacto •
Rápido • Língua dos browsers
Asynchronous JavaScript And XML
Asynchronous JavaScript And XML ???
Asynchronous JavaScript And JSON!!! AJAJ?
REST JSON AJAX WEB 2.0
Eu quero os dados de: • Uma pessoa • +
os comentários dela • + os pedidos mais recentes dela
Eu quero os dados de: • /v1/pessoas/123 • /v1/pessoas/123/comentarios •
/v1/pessoas/123/pedidos/recentes
Eu quero os dados de: • /v1/pessoas/123?extra=comentarios, pedidos-recentes
GraphQL
GraphQL • Consultas (queries) e interações (mutations) • A consulta
descreve o formato da resposta • Não requer uma tecnologia específica • Não requer HTTP • A implementação gera a documentação
Queries
Mutations
Subscriptions
None
None
None
None
None
None
None
None
None
None
None
Tipos do GraphQL • Escalares (Int, Float, String, Boolean, ID)
• Objetos • Listas • Input • Non-null • Avançado: enum, union, interfaces, etc.
None
Versionamento Vocês já viram isso? /v1/listaPedidos /v2/pedidos /v3/orders ...
None
None
None
None
Bibliotecas para C# / .NET • graphql-dotnet • graphql-net •
Hot Chocolate • etc. JÁ ESCOLHEU?
Referências • https://stackoverflow.com/questions/4862310/js on-and-xml-comparison • https://facebook.github.io/graphql/June2018/ • https://graphql.org/