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
43
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
28
PHP – principais novidades do 5.3 ao 5.6
alanwillms
0
56
Other Decks in Programming
See All in Programming
NPOでのDevinの活用
codeforeveryone
0
830
A full stack side project webapp all in Kotlin (KotlinConf 2025)
dankim
0
120
ペアプロ × 生成AI 現場での実践と課題について / generative-ai-in-pair-programming
codmoninc
1
18k
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
900
生成AI時代のコンポーネントライブラリの作り方
touyou
1
210
PipeCDのプラグイン化で目指すところ
warashi
1
270
Systèmes distribués, pour le meilleur et pour le pire - BreizhCamp 2025 - Conférence
slecache
0
120
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
170
テストから始めるAgentic Coding 〜Claude Codeと共に行うTDD〜 / Agentic Coding starts with testing
rkaga
12
4.4k
Flutterで備える!Accessibility Nutrition Labels完全ガイド
yuukiw00w
0
160
ソフトウェア品質を数字で捉える技術。事業成長を支えるシステム品質の マネジメント
takuya542
1
13k
MDN Web Docs に日本語翻訳でコントリビュートしたくなる
ohmori_yusuke
1
120
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
Agile that works and the tools we love
rasmusluckow
329
21k
GitHub's CSS Performance
jonrohan
1031
460k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
510
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
It's Worth the Effort
3n
185
28k
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/