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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Tugberk Ugurlu
September 05, 2017
Programming
270
0
Share
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
600
Let the Uncertainty be Your Friend: Finding Your Path in a Wiggly Road
tourismgeek
0
670
Benefits of Managed Kubernetes in Azure (Azure Container Service, AKS)
tourismgeek
0
600
Levelling up to Become a Technical Lead
tourismgeek
2
28k
Benefits of Managed Kubernetes in Azure (Azure Container Service, AKS)
tourismgeek
0
270
I Hated React too Soon, Reconciled with It Quickly Afterwards
tourismgeek
0
100
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
20260514 - build with ai 2026 - build LINE Bot with Gemini CLI
line_developers_tw
PRO
0
460
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
120
ソースコード→AST→オペコード、の旅を覗いてみる
o0h
PRO
1
140
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
9
670
Agentic AI & UI: Arcitecture, HITL, Emerging Standards
manfredsteyer
PRO
0
130
Swiftのレキシカルスコープ管理
kntkymt
0
180
Oxlintはいかにしてtsgolintのlint ruleを呼び出しているのか
syumai
1
430
Import assertionsが消えた日~ECMAScriptの仕様はどう決まり、なぜ覆るのか~
bicstone
2
190
Modding RubyKaigi for Myself
yui_knk
0
390
2026年のソフトウェア開発を考える(2026/05版) / Software Engineering Scrum Fest Niigata 2026 Edition
twada
PRO
24
14k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
630
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
380
Featured
See All Featured
Exploring anti-patterns in Rails
aemeredith
3
360
How to Think Like a Performance Engineer
csswizardry
28
2.6k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
230
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
210
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Raft: Consensus for Rubyists
vanstee
141
7.4k
Designing for humans not robots
tammielis
254
26k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
A Modern Web Designer's Workflow
chriscoyier
698
190k
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/