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
GraphQL
Search
Tugberk Ugurlu
September 05, 2017
Programming
270
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GraphQL
Internal Lightning Talk @ Redgate, Cambridge, UK
Tugberk Ugurlu
September 05, 2017
More Decks by Tugberk Ugurlu
See All by Tugberk Ugurlu
Redis Cluster for Write Intensive Workloads
tourismgeek
1
21k
Designing Towards Event Sourcing
tourismgeek
1
20k
Essentials for Building and Leading Highly Effective Development Teams
tourismgeek
0
610
Let the Uncertainty be Your Friend: Finding Your Path in a Wiggly Road
tourismgeek
0
680
Benefits of Managed Kubernetes in Azure (Azure Container Service, AKS)
tourismgeek
0
610
Levelling up to Become a Technical Lead
tourismgeek
2
28k
Benefits of Managed Kubernetes in Azure (Azure Container Service, AKS)
tourismgeek
0
280
I Hated React too Soon, Reconciled with It Quickly Afterwards
tourismgeek
0
110
ASP.NET MVC 5 vs ASP.net Web API 2 vs ASP.NET Core MVC 1
tourismgeek
1
1.1k
Other Decks in Programming
See All in Programming
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
0
530
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
200
TSX の <Hoge<Fuga>> という構文に驚いた話 / tsx-type-argument-syntax
kanaru0928
0
130
継続モナドとリアクティブプログラミング
yukikurage
3
660
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
190
使用 Meilisearch 建立新聞搜尋工具
johnroyer
0
190
数百円から始めるRuby電子工作
tarosay
0
120
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
150
php-fpmのプロセスが枯渇した日-調査・対処・そして本当にやるべきだったこと-
shibuchaaaan
0
170
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
200
광주소프트웨어마이스터고등학교 DevFest 특강 - 바이브 코딩 시대에서 주니어 개발자로 살아남는 방법
utilforever
1
160
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
17k
Featured
See All Featured
Accessibility Awareness
sabderemane
1
160
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Designing for humans not robots
tammielis
254
26k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.5k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1k
How to build a perfect <img>
jonoalderson
1
5.8k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
360
How to Talk to Developers About Accessibility
jct
2
450
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Prompt Engineering for Job Search
mfonobong
0
390
30 Presentation Tips
portentint
PRO
1
360
Transcript
GraphQL TUGBERK UGURLU
https://flic.kr/p/7ZJ5Aa
GraphQL is a query language for your API, and a
server-side runtime for executing queries by using a type system you define for your data. (http://graphql.org/learn/)
WHAT PROBLEMS DOES IT ADDRESS? Strongly Typed Describe what’s possible
with a type system Declarative Ask for what you need, get exactly that Compositional Get many resources in a single request
WHO’S USING GRAPHQL? http://graphql.org/users/
CHARACTERISTICS Query has exactly the same shape as the result
GraphQL operates on set of types in your schema
CHARACTERISTICS GraphQL services can be written in any language Introspection
system allows you to ask for information about the schema
SHOW ME THE CODE! https://flic.kr/p/ec78kF
HELLO WORLD!
HELLO WORLD!
NULLABILITY http://graphql.org/learn/best-practices/#nullability
HELLO WORLD!
SERVER
CLIENT
GITHUB GRAPHQL API V4 https://developer.github.com/v4/
GITHUB GRAPHQL API V4
GITHUB GRAPHQL API V4
GITHUB GRAPHQL API V4
GRAPHIQL https://github.com/graphql/graphiql
SILVER BULLET? https://flic.kr/p/5UBU5r
A FEW PROBLEMS Authentication and Authorization You are on your
own! HTTP Caching Cause by having a POST request with single endpoint Unpredictable Execution Freedom has its cost!
MUTATIONS It seems immature and enforces the RPC pattern. (http://graphql.org/learn/queries/#mutations)
BFF (BACKENDS FOR FRONTENDS) (http://samnewman.io/patterns/architectural/bff/)
ODATA? https://twitter.com/tourismgeek/status/904983421352644608
FURTHER RESOURCES https://flic.kr/p/4omoir
RFC SPEC http://facebook.github.io/graphql/ (Working draft, last updated IN 2016, Oct)
THINKING IN GRAPHS http://graphql.org/learn/thinking-in-graphs/
RELAY https://facebook.github.io/relay/
MORE LINKS • Home of GraphQL: http://graphql.org/ • Best Practices
with GraphQL: http://graphql.org/learn/best-practices/ • Getting Started: http://graphql.org/graphql-js/ • Validation: http://graphql.org/learn/validation/ • Pagination: http://graphql.org/learn/pagination/