Enviar pesquisa
Carregar
GraphQL & Relay
•
3 gostaram
•
1,141 visualizações
V
Viacheslav Slinko
Seguir
MoscowJS 30
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 36
Baixar agora
Baixar para ler offline
Recomendados
GraphQL + relay
GraphQL + relay
Cédric GILLET
GraphQL
GraphQL
Joel Corrêa
GraphQL
GraphQL
Cédric GILLET
Introduction to GraphQL
Introduction to GraphQL
Rodrigo Prates
GraphQL With Relay Part Deux
GraphQL With Relay Part Deux
Brad Pillow
GraphQL in an Age of REST
GraphQL in an Age of REST
Yos Riady
GraphQL: Enabling a new generation of API developer tools
GraphQL: Enabling a new generation of API developer tools
Sashko Stubailo
Better APIs with GraphQL
Better APIs with GraphQL
Josh Price
Recomendados
GraphQL + relay
GraphQL + relay
Cédric GILLET
GraphQL
GraphQL
Joel Corrêa
GraphQL
GraphQL
Cédric GILLET
Introduction to GraphQL
Introduction to GraphQL
Rodrigo Prates
GraphQL With Relay Part Deux
GraphQL With Relay Part Deux
Brad Pillow
GraphQL in an Age of REST
GraphQL in an Age of REST
Yos Riady
GraphQL: Enabling a new generation of API developer tools
GraphQL: Enabling a new generation of API developer tools
Sashko Stubailo
Better APIs with GraphQL
Better APIs with GraphQL
Josh Price
Graphql
Graphql
Niv Ben David
Into to GraphQL
Into to GraphQL
shobot
Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)
Rafael Wilber Kerr
The Apollo and GraphQL Stack
The Apollo and GraphQL Stack
Sashko Stubailo
Adding GraphQL to your existing architecture
Adding GraphQL to your existing architecture
Sashko Stubailo
An intro to GraphQL
An intro to GraphQL
valuebound
Why UI Developers Love GraphQL - Sashko Stubailo, Apollo/Meteor
Why UI Developers Love GraphQL - Sashko Stubailo, Apollo/Meteor
Jon Wong
Modular GraphQL with Schema Stitching
Modular GraphQL with Schema Stitching
Sashko Stubailo
GraphQL Introduction
GraphQL Introduction
Serge Huber
Introduction to GraphQL
Introduction to GraphQL
Brainhub
GraphQL IndyJS April 2016
GraphQL IndyJS April 2016
Brad Pillow
How to GraphQL
How to GraphQL
Tomasz Bak
GraphQL across the stack: How everything fits together
GraphQL across the stack: How everything fits together
Sashko Stubailo
REST vs GraphQL
REST vs GraphQL
Squareboat
Graphql
Graphql
Arnar Þór Sveinsson
GraphQL: The Missing Link Between Frontend and Backend Devs
GraphQL: The Missing Link Between Frontend and Backend Devs
Sashko Stubailo
Intro to GraphQL
Intro to GraphQL
Rakuten Group, Inc.
React, GraphQL и Relay - вполне себе нормальный компонентный подход (nodkz)
React, GraphQL и Relay - вполне себе нормальный компонентный подход (nodkz)
Pavel Chertorogov
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Hafiz Ismail
Introduction to graphQL
Introduction to graphQL
Muhilvarnan V
Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)
Pavel Chertorogov
From MEAN to the MERN Stack
From MEAN to the MERN Stack
Troy Miles
Mais conteúdo relacionado
Mais procurados
Graphql
Graphql
Niv Ben David
Into to GraphQL
Into to GraphQL
shobot
Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)
Rafael Wilber Kerr
The Apollo and GraphQL Stack
The Apollo and GraphQL Stack
Sashko Stubailo
Adding GraphQL to your existing architecture
Adding GraphQL to your existing architecture
Sashko Stubailo
An intro to GraphQL
An intro to GraphQL
valuebound
Why UI Developers Love GraphQL - Sashko Stubailo, Apollo/Meteor
Why UI Developers Love GraphQL - Sashko Stubailo, Apollo/Meteor
Jon Wong
Modular GraphQL with Schema Stitching
Modular GraphQL with Schema Stitching
Sashko Stubailo
GraphQL Introduction
GraphQL Introduction
Serge Huber
Introduction to GraphQL
Introduction to GraphQL
Brainhub
GraphQL IndyJS April 2016
GraphQL IndyJS April 2016
Brad Pillow
How to GraphQL
How to GraphQL
Tomasz Bak
GraphQL across the stack: How everything fits together
GraphQL across the stack: How everything fits together
Sashko Stubailo
REST vs GraphQL
REST vs GraphQL
Squareboat
Graphql
Graphql
Arnar Þór Sveinsson
GraphQL: The Missing Link Between Frontend and Backend Devs
GraphQL: The Missing Link Between Frontend and Backend Devs
Sashko Stubailo
Intro to GraphQL
Intro to GraphQL
Rakuten Group, Inc.
React, GraphQL и Relay - вполне себе нормальный компонентный подход (nodkz)
React, GraphQL и Relay - вполне себе нормальный компонентный подход (nodkz)
Pavel Chertorogov
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Hafiz Ismail
Introduction to graphQL
Introduction to graphQL
Muhilvarnan V
Mais procurados
(20)
Graphql
Graphql
Into to GraphQL
Into to GraphQL
Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)
The Apollo and GraphQL Stack
The Apollo and GraphQL Stack
Adding GraphQL to your existing architecture
Adding GraphQL to your existing architecture
An intro to GraphQL
An intro to GraphQL
Why UI Developers Love GraphQL - Sashko Stubailo, Apollo/Meteor
Why UI Developers Love GraphQL - Sashko Stubailo, Apollo/Meteor
Modular GraphQL with Schema Stitching
Modular GraphQL with Schema Stitching
GraphQL Introduction
GraphQL Introduction
Introduction to GraphQL
Introduction to GraphQL
GraphQL IndyJS April 2016
GraphQL IndyJS April 2016
How to GraphQL
How to GraphQL
GraphQL across the stack: How everything fits together
GraphQL across the stack: How everything fits together
REST vs GraphQL
REST vs GraphQL
Graphql
Graphql
GraphQL: The Missing Link Between Frontend and Backend Devs
GraphQL: The Missing Link Between Frontend and Backend Devs
Intro to GraphQL
Intro to GraphQL
React, GraphQL и Relay - вполне себе нормальный компонентный подход (nodkz)
React, GraphQL и Relay - вполне себе нормальный компонентный подход (nodkz)
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Introduction to graphQL
Introduction to graphQL
Destaque
Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)
Pavel Chertorogov
From MEAN to the MERN Stack
From MEAN to the MERN Stack
Troy Miles
MERN Presentation, January 2015
MERN Presentation, January 2015
Barry Dyck
GraphQL Relay Introduction
GraphQL Relay Introduction
Chen-Tsu Lin
Picking the Right Node.js Framework for Your Use Case
Picking the Right Node.js Framework for Your Use Case
Jimmy Guerrero
Relay: Seamless Syncing for React (VanJS)
Relay: Seamless Syncing for React (VanJS)
Brooklyn Zelenka
Introduction to MongoDB
Introduction to MongoDB
Chun-Kai Wang
GraphQL Story: Intro To GraphQL
GraphQL Story: Intro To GraphQL
Riza Fahmi
AWS re:Invent 2016: From VUI to QA: Building a Voice-Based Adventure Game for...
AWS re:Invent 2016: From VUI to QA: Building a Voice-Based Adventure Game for...
Amazon Web Services
React + Redux Introduction
React + Redux Introduction
Nikolaus Graf
React JS and why it's awesome
React JS and why it's awesome
Andrew Hull
Destaque
(11)
Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)
From MEAN to the MERN Stack
From MEAN to the MERN Stack
MERN Presentation, January 2015
MERN Presentation, January 2015
GraphQL Relay Introduction
GraphQL Relay Introduction
Picking the Right Node.js Framework for Your Use Case
Picking the Right Node.js Framework for Your Use Case
Relay: Seamless Syncing for React (VanJS)
Relay: Seamless Syncing for React (VanJS)
Introduction to MongoDB
Introduction to MongoDB
GraphQL Story: Intro To GraphQL
GraphQL Story: Intro To GraphQL
AWS re:Invent 2016: From VUI to QA: Building a Voice-Based Adventure Game for...
AWS re:Invent 2016: From VUI to QA: Building a Voice-Based Adventure Game for...
React + Redux Introduction
React + Redux Introduction
React JS and why it's awesome
React JS and why it's awesome
Semelhante a GraphQL & Relay
All About GRAND Stack: GraphQL, React, Apollo, and Neo4j (Mark Needham) - Gre...
All About GRAND Stack: GraphQL, React, Apollo, and Neo4j (Mark Needham) - Gre...
GreeceJS
Getting started with Apollo Client and GraphQL
Getting started with Apollo Client and GraphQL
Morgan Dedmon
MongoDB.local Berlin: Building a GraphQL API with MongoDB, Prisma and Typescript
MongoDB.local Berlin: Building a GraphQL API with MongoDB, Prisma and Typescript
MongoDB
Nexthink Library - replacing a ruby on rails application with Scala and Spray
Nexthink Library - replacing a ruby on rails application with Scala and Spray
Matthew Farwell
Web Access the Realm with GraphQL
Web Access the Realm with GraphQL
Knoldus Inc.
React native meetup 2019
React native meetup 2019
Arjun Kava
Scala in a wild enterprise
Scala in a wild enterprise
Rafael Bagmanov
Graphql presentation
Graphql presentation
Vibhor Grover
Graphql usage
Graphql usage
Valentin Buryakov
React & GraphQL
React & GraphQL
Nikolas Burk
Camunda GraphQL Extension (09/2017 Berlin)
Camunda GraphQL Extension (09/2017 Berlin)
Harald J. Loydl
Building and deploying GraphQL Servers with AWS Lambda and Prisma I AWS Dev D...
Building and deploying GraphQL Servers with AWS Lambda and Prisma I AWS Dev D...
AWS Germany
GraphQL and its schema as a universal layer for database access
GraphQL and its schema as a universal layer for database access
Connected Data World
2010 07-20 TDD with ActiveResource
2010 07-20 TDD with ActiveResource
Wolfram Arnold
Rakuten Technology Conference 2017 A Distributed SQL Database For Data Analy...
Rakuten Technology Conference 2017 A Distributed SQL Database For Data Analy...
Rakuten Group, Inc.
Full Stack Scala
Full Stack Scala
Ramnivas Laddad
Computing recommendations at extreme scale with Apache Flink @Buzzwords 2015
Computing recommendations at extreme scale with Apache Flink @Buzzwords 2015
Till Rohrmann
GraphQL - A query language to empower your API consumers (NDC Sydney 2017)
GraphQL - A query language to empower your API consumers (NDC Sydney 2017)
Rob Crowley
Apache Flink Berlin Meetup May 2016
Apache Flink Berlin Meetup May 2016
Stephan Ewen
VulcanJS Austin Presentation
VulcanJS Austin Presentation
Justin Reynolds
Semelhante a GraphQL & Relay
(20)
All About GRAND Stack: GraphQL, React, Apollo, and Neo4j (Mark Needham) - Gre...
All About GRAND Stack: GraphQL, React, Apollo, and Neo4j (Mark Needham) - Gre...
Getting started with Apollo Client and GraphQL
Getting started with Apollo Client and GraphQL
MongoDB.local Berlin: Building a GraphQL API with MongoDB, Prisma and Typescript
MongoDB.local Berlin: Building a GraphQL API with MongoDB, Prisma and Typescript
Nexthink Library - replacing a ruby on rails application with Scala and Spray
Nexthink Library - replacing a ruby on rails application with Scala and Spray
Web Access the Realm with GraphQL
Web Access the Realm with GraphQL
React native meetup 2019
React native meetup 2019
Scala in a wild enterprise
Scala in a wild enterprise
Graphql presentation
Graphql presentation
Graphql usage
Graphql usage
React & GraphQL
React & GraphQL
Camunda GraphQL Extension (09/2017 Berlin)
Camunda GraphQL Extension (09/2017 Berlin)
Building and deploying GraphQL Servers with AWS Lambda and Prisma I AWS Dev D...
Building and deploying GraphQL Servers with AWS Lambda and Prisma I AWS Dev D...
GraphQL and its schema as a universal layer for database access
GraphQL and its schema as a universal layer for database access
2010 07-20 TDD with ActiveResource
2010 07-20 TDD with ActiveResource
Rakuten Technology Conference 2017 A Distributed SQL Database For Data Analy...
Rakuten Technology Conference 2017 A Distributed SQL Database For Data Analy...
Full Stack Scala
Full Stack Scala
Computing recommendations at extreme scale with Apache Flink @Buzzwords 2015
Computing recommendations at extreme scale with Apache Flink @Buzzwords 2015
GraphQL - A query language to empower your API consumers (NDC Sydney 2017)
GraphQL - A query language to empower your API consumers (NDC Sydney 2017)
Apache Flink Berlin Meetup May 2016
Apache Flink Berlin Meetup May 2016
VulcanJS Austin Presentation
VulcanJS Austin Presentation
Último
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
LoriGlavin3
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
LoriGlavin3
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
LoriGlavin3
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Pim van der Noll
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
LoriGlavin3
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
Inflectra
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
UiPathCommunity
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
Ingrid Airi González
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
itnewsafrica
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
BookNet Canada
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
Farhan Tariq
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
Nathaniel Shimoni
A Framework for Development in the AI Age
A Framework for Development in the AI Age
Cprime
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
Ravi Sanghani
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
LoriGlavin3
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Mark Goldstein
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
itnewsafrica
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
Knoldus Inc.
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
Kaya Weers
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
panagenda
Último
(20)
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
A Framework for Development in the AI Age
A Framework for Development in the AI Age
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
GraphQL & Relay
1.
Viacheslav Slinko CIAN Group @vslinko GraphQL Relay and
2.
Problems 2
3.
Problems • UI Driven
Data Fetching • Network Op!miza!ons • Simple API Versioning • Incremental Rendering 3
4.
REST is resource
oriented 4
5.
REST is not
op!mal 5
6.
En!!es should be synchronized 6
7.
Intro 7
8.
{ me { nickname } } GraphQL Request 8
9.
{“data”: { “me”: { “nickname”:
“vslinko” } }} GraphQL Response 9
10.
Data Layer Applica!on Layer GraphQL 10 Your
current business logic Library on your favorite language Any database you want
11.
Data Layer Applica!on Layer GraphQL Relay React 11 Your
current business logic Library on your favorite language Any database you want Client JavaScript Framework View Layer
12.
Good Parts 12
13.
Modern Applica!ons 13
14.
fragments: { object: ()
=> Relay.QL` fragment on Object { title photos(width: 300) { url } } `, } fragments: { object: () => Relay.QL` fragment on Object { title photos(width: 300) { url } } `, } fragments: { object: () => Relay.QL` fragment on Object { title photos(width: 300) { url } } `, } fragments: { object: () => Relay.QL` fragment on Object { title photos(width: 300) { url } } `, } Parse Requirements 14
15.
fragments: { user: ()
=> Relay.QL` fragment on User { favourites(first: 10) { ${ObjectView.getFragment(‘object’)} } } `, } Compose Requirements 15
16.
fragments: { root: ()
=> Relay.QL` fragment on RootQuery { me { balance ${ObjectView.getFragment(‘user’)} } } `, } Send Composed Query 16
17.
Balance User Object Photo 1 Photo
2 Photo 3 Execute Query Time 17
18.
User Object Object Object PhotoPhotoPhoto PhotoPhotoPhoto PhotoPhotoPhoto Render and Cache 18
19.
Data Re-usage 19
20.
There are only two
hard things in Computer Science: cache invalida!on and naming things. 20
21.
21
22.
Muta!ons • Data Changes •
Side-effects • Declara!ve API • Op!mis!c Updates 22
23.
Incremental Rendering 23
24.
24 GraphQL Version 1 Applica!on Version 1 Versioning Ini!al
release
25.
GraphQL Version 1 Applica!on Version 1 Version
2 Versioning New features — new fields 24
26.
GraphQL Version 1 Applica!on Version 1 Version
2 Version 3 Versioning Change fields without problems 24
27.
GraphQL Version 1 Applica!on Version 997 Version
998 Version 999 Applica!on Version 1 Versioning Do not delete fields — deprecate them 24
28.
25
29.
Good Parts: Recap •
Declara!ve & UI Oriented • Very Effec!ve • Simple Maintenance • Extra Pre#y Features 26
30.
Bad Parts 27
31.
Verbose code 28
32.
Documenta!on is not complete 29
33.
Current Problems • No
Subscrip!ons • No Local State Management • Complex Setup Process 30
34.
In Conclusion 31
35.
In Conclusion • Tries
to Solve All Problems • Simple but Not Easy • Growing Community 32
36.
Thanks! Ques!ons? h"p://bit.ly/gr-notes Viacheslav Slinko CIAN Group @vslinko
Baixar agora