ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
? 2021 GraphQL, Inc. Page | 1
GraphQL Fundamentals
? 2021 GraphQL.
.
Page | 2
Senior Software Engineer at BORN Group
Virbhadra S. Ankalkote
? 2021 GraphQL Page | 3
Agenda
? 2021 GraphQL Page | 4
Agenda
{
graphql:{
what
who
why
how
}
}
? 2021 GraphQL Page | 5
What ?
? 2021 GraphQL Page | 6
¡°GraphQL is a query language
for APIs, and a runtime for
ful?lling those queries with
existing data ¡±
? 2021 GraphQL Page | 7
Who ?
? 2021 GraphQL Page | 8
¡°In 2012, Facebook develop the
GraphQL technology for their
native mobile app¡±
.
? 2021 GraphQL Page | 9
.
2012 2015 2017..2018...2020
Development Started Open Source Evolving Specification.
Timeline
? 2021 GraphQL Page | 10
Why?
? 2021 GraphQL Page | 11
Application Programming Interface (API)
? 2021 GraphQL Page | 12
REST Flow
? 2021 GraphQL Page | 13
Principles of REST API Design
? 2021 GraphQL Page | 14
? 2021 GraphQL Page | 15
GraphQL Flow
? 2021 GraphQL Page | 16
? 2021 GraphQL Page | 17
Browser Tools
? 2021 GraphQL Page | 18
? 2021 GraphQL Page | 19
GraphQL Playground
? 2021 GraphQL Page | 20
How?
? 2021 GraphQL Page | 21
? 2021 GraphQL Page | 22
? 2021 GraphQL Page | 23
? 2021 GraphQL Page | 24
? 2021 GraphQL Page | 25
Limitations
? 2021 GraphQL Page | 26
? 2021 GraphQL Page | 27
Reading Data
? 2021 GraphQL Page | 28
? 2021 GraphQL Page | 29
? 2021 GraphQL Page | 30
? 2021 GraphQL Page | 31
? 2021 GraphQL Page | 32
Writing Data ( Mutation )
? 2021 GraphQL Page | 33
? 2021 GraphQL Page | 34
? 2021 GraphQL Page | 35
? 2021 GraphQL Page | 36
GraphQL Variables
? 2021 GraphQL Page | 37
? In GraphQL, you can use variables to reuse the same query/mutations written by
the client, with different arguments.
? When we start working with variables, we need to do three things:
¨C Replace the static value in the query with $variableName
¨C Declare $variableName as one of the variables accepted by the query
¨C Pass variableName: value in the separate, transport-speci?c (usually JSON)
variables dictionary
? 2021 GraphQL Page | 38
GraphQL Fragments
? 2021 GraphQL Page | 39
? A GraphQL fragment is a piece of logic that a client can share between multiple
queries and mutations.
? In GraphQL, you often need to query for the same data ?elds in different queries.
? By reusing this code, we can be more ef?cient with our time and reuse these piece
of queries
? 2021 GraphQL Page | 40
? 2021 GraphQL Page | 41
Pain Points of GraphQL
? 2021 GraphQL Page | 42
Almost impossible to solve
¡ñ Query In Inde?nite Depth
¨C GraphQL cannot query in inde?nite depth, so if you have a tree and want to
return a branch without knowing the depth, you¡¯ll have to do some
pagination
¡ñ Speci?c Response Structure
¨C In GraphQL the response matches the shape of the query, so if you need to
respond in a very speci?c structure, you'll have to add a transformation layer
to reshape the response.
? 2021 GraphQL Page | 43
Hard to solve
¡ñ Cache at Network Level
¨C Because of the commonly way GraphQL is used over HTTP (A POST in a
single endpoint), cache at network level becomes hard. A way to solve it is to
use Persisted Queries.
¡ñ Handling File Upload
¨C There is nothing about ?le upload in the GraphQL speci?cation and
mutations doesn¡¯t accept ?les in the arguments. To solve it you can upload
?les using other kind of APIs (like REST) and pass the URL of the uploaded ?le
to the GraphQL mutation, or inject the ?le in the execution context, so you¡¯ll
have the ?le inside the resolver functions.
? 2021 GraphQL Page | 44
Questions ?
? 2021 GraphQL Page | 45
Thank You

More Related Content

What's hot (20)

Graphql presentation
Graphql presentationGraphql presentation
Graphql presentation
Vibhor Grover
?
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQL
Sangeeta Ashrit
?
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQL
Rodrigo Prates
?
Intro to GraphQL
 Intro to GraphQL Intro to GraphQL
Intro to GraphQL
Rakuten Group, Inc.
?
GraphQL vs REST
GraphQL vs RESTGraphQL vs REST
GraphQL vs REST
GreeceJS
?
Better APIs with GraphQL
Better APIs with GraphQL Better APIs with GraphQL
Better APIs with GraphQL
Josh Price
?
GraphQL
GraphQLGraphQL
GraphQL
C¨¦dric GILLET
?
Intro GraphQL
Intro GraphQLIntro GraphQL
Intro GraphQL
Simona Cotin
?
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
luisw19
?
GraphQL: Enabling a new generation of API developer tools
GraphQL: Enabling a new generation of API developer toolsGraphQL: Enabling a new generation of API developer tools
GraphQL: Enabling a new generation of API developer tools
Sashko Stubailo
?
Introduction to GraphQL: Mobile Week SF
Introduction to GraphQL: Mobile Week SFIntroduction to GraphQL: Mobile Week SF
Introduction to GraphQL: Mobile Week SF
Amazon Web Services
?
The Apollo and GraphQL Stack
The Apollo and GraphQL StackThe Apollo and GraphQL Stack
The Apollo and GraphQL Stack
Sashko Stubailo
?
REST vs. GraphQL: Critical Look
REST vs. GraphQL: Critical LookREST vs. GraphQL: Critical Look
REST vs. GraphQL: Critical Look
Nordic APIs
?
React & GraphQL
React & GraphQLReact & GraphQL
React & GraphQL
Nikolas Burk
?
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQL
Amazon Web Services
?
How to GraphQL
How to GraphQLHow to GraphQL
How to GraphQL
Tomasz Bak
?
Wroclaw GraphQL - GraphQL in Java
Wroclaw GraphQL - GraphQL in JavaWroclaw GraphQL - GraphQL in Java
Wroclaw GraphQL - GraphQL in Java
MarcinStachniuk
?
Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)
Rafael Wilber Kerr
?
Spring GraphQL
Spring GraphQLSpring GraphQL
Spring GraphQL
VMware Tanzu
?
Building Modern APIs with GraphQL
Building Modern APIs with GraphQLBuilding Modern APIs with GraphQL
Building Modern APIs with GraphQL
Amazon Web Services
?
GraphQL vs REST
GraphQL vs RESTGraphQL vs REST
GraphQL vs REST
GreeceJS
?
Better APIs with GraphQL
Better APIs with GraphQL Better APIs with GraphQL
Better APIs with GraphQL
Josh Price
?
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
luisw19
?
GraphQL: Enabling a new generation of API developer tools
GraphQL: Enabling a new generation of API developer toolsGraphQL: Enabling a new generation of API developer tools
GraphQL: Enabling a new generation of API developer tools
Sashko Stubailo
?
Introduction to GraphQL: Mobile Week SF
Introduction to GraphQL: Mobile Week SFIntroduction to GraphQL: Mobile Week SF
Introduction to GraphQL: Mobile Week SF
Amazon Web Services
?
The Apollo and GraphQL Stack
The Apollo and GraphQL StackThe Apollo and GraphQL Stack
The Apollo and GraphQL Stack
Sashko Stubailo
?
REST vs. GraphQL: Critical Look
REST vs. GraphQL: Critical LookREST vs. GraphQL: Critical Look
REST vs. GraphQL: Critical Look
Nordic APIs
?
Wroclaw GraphQL - GraphQL in Java
Wroclaw GraphQL - GraphQL in JavaWroclaw GraphQL - GraphQL in Java
Wroclaw GraphQL - GraphQL in Java
MarcinStachniuk
?
Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)
Rafael Wilber Kerr
?

Similar to GraphQL Fundamentals (20)

Magento2.3 - GraphQL introduction
Magento2.3  - GraphQL introductionMagento2.3  - GraphQL introduction
Magento2.3 - GraphQL introduction
Vishakha Borkar
?
The GraphQL Ecosystem in 2018
The GraphQL Ecosystem in 2018The GraphQL Ecosystem in 2018
The GraphQL Ecosystem in 2018
Nikolas Burk
?
Graphql for Frontend Developers Simplifying Data Fetching.docx
Graphql for Frontend Developers Simplifying Data Fetching.docxGraphql for Frontend Developers Simplifying Data Fetching.docx
Graphql for Frontend Developers Simplifying Data Fetching.docx
ssuser5583681
?
CONDG April 23 2020 - Baskar Rao - GraphQL
CONDG April 23 2020 - Baskar Rao - GraphQLCONDG April 23 2020 - Baskar Rao - GraphQL
CONDG April 23 2020 - Baskar Rao - GraphQL
Matthew Groves
?
Harnessing the Power of GraphQL in WordPress
Harnessing the Power of GraphQL in WordPressHarnessing the Power of GraphQL in WordPress
Harnessing the Power of GraphQL in WordPress
Sandip Basnet
?
Modular GraphQL with Schema Stitching
Modular GraphQL with Schema StitchingModular GraphQL with Schema Stitching
Modular GraphQL with Schema Stitching
Sashko Stubailo
?
React Flux to GraphQL
React Flux to GraphQLReact Flux to GraphQL
React Flux to GraphQL
Turadg Aleahmad
?
GraphQL-ify your APIs - Devoxx UK 2021
 GraphQL-ify your APIs - Devoxx UK 2021 GraphQL-ify your APIs - Devoxx UK 2021
GraphQL-ify your APIs - Devoxx UK 2021
Soham Dasgupta
?
GraphQL across the stack: How everything fits together
GraphQL across the stack: How everything fits togetherGraphQL across the stack: How everything fits together
GraphQL across the stack: How everything fits together
Sashko Stubailo
?
GraphQL + relay
GraphQL + relayGraphQL + relay
GraphQL + relay
C¨¦dric GILLET
?
Boosting Data Fetching in Turkish Apps with React Native and GraphQL
Boosting Data Fetching in Turkish Apps with React Native and GraphQLBoosting Data Fetching in Turkish Apps with React Native and GraphQL
Boosting Data Fetching in Turkish Apps with React Native and GraphQL
Shiv Technolabs Pvt. Ltd.
?
Scaling your GraphQL applications with Dgraph
Scaling your GraphQL applications with DgraphScaling your GraphQL applications with Dgraph
Scaling your GraphQL applications with Dgraph
Karthic Rao
?
Redux vs GraphQL
Redux vs GraphQLRedux vs GraphQL
Redux vs GraphQL
Jordon McKoy
?
Boost your API with GraphQL
Boost your API with GraphQLBoost your API with GraphQL
Boost your API with GraphQL
Jean-Francois James
?
How easy (or hard) it is to monitor your graph ql service performance
How easy (or hard) it is to monitor your graph ql service performanceHow easy (or hard) it is to monitor your graph ql service performance
How easy (or hard) it is to monitor your graph ql service performance
Red Hat
?
Testing and Developing GraphQL APIs
Testing and Developing GraphQL APIsTesting and Developing GraphQL APIs
Testing and Developing GraphQL APIs
Postman
?
GraphQL research summary
GraphQL research summaryGraphQL research summary
GraphQL research summary
Objectivity
?
Boost your APIs with GraphQL 1.0
Boost your APIs with GraphQL 1.0Boost your APIs with GraphQL 1.0
Boost your APIs with GraphQL 1.0
Ot¨¢vio Santana
?
Dubai Dreamin '24 - Exploring the Power of Salesforce GraphQL
Dubai Dreamin '24 - Exploring the Power of Salesforce GraphQLDubai Dreamin '24 - Exploring the Power of Salesforce GraphQL
Dubai Dreamin '24 - Exploring the Power of Salesforce GraphQL
Tarandeep Singh
?
Getting Started with Spring for GraphQL
Getting Started with Spring for GraphQLGetting Started with Spring for GraphQL
Getting Started with Spring for GraphQL
VMware Tanzu
?
Magento2.3 - GraphQL introduction
Magento2.3  - GraphQL introductionMagento2.3  - GraphQL introduction
Magento2.3 - GraphQL introduction
Vishakha Borkar
?
The GraphQL Ecosystem in 2018
The GraphQL Ecosystem in 2018The GraphQL Ecosystem in 2018
The GraphQL Ecosystem in 2018
Nikolas Burk
?
Graphql for Frontend Developers Simplifying Data Fetching.docx
Graphql for Frontend Developers Simplifying Data Fetching.docxGraphql for Frontend Developers Simplifying Data Fetching.docx
Graphql for Frontend Developers Simplifying Data Fetching.docx
ssuser5583681
?
CONDG April 23 2020 - Baskar Rao - GraphQL
CONDG April 23 2020 - Baskar Rao - GraphQLCONDG April 23 2020 - Baskar Rao - GraphQL
CONDG April 23 2020 - Baskar Rao - GraphQL
Matthew Groves
?
Harnessing the Power of GraphQL in WordPress
Harnessing the Power of GraphQL in WordPressHarnessing the Power of GraphQL in WordPress
Harnessing the Power of GraphQL in WordPress
Sandip Basnet
?
Modular GraphQL with Schema Stitching
Modular GraphQL with Schema StitchingModular GraphQL with Schema Stitching
Modular GraphQL with Schema Stitching
Sashko Stubailo
?
GraphQL-ify your APIs - Devoxx UK 2021
 GraphQL-ify your APIs - Devoxx UK 2021 GraphQL-ify your APIs - Devoxx UK 2021
GraphQL-ify your APIs - Devoxx UK 2021
Soham Dasgupta
?
GraphQL across the stack: How everything fits together
GraphQL across the stack: How everything fits togetherGraphQL across the stack: How everything fits together
GraphQL across the stack: How everything fits together
Sashko Stubailo
?
Boosting Data Fetching in Turkish Apps with React Native and GraphQL
Boosting Data Fetching in Turkish Apps with React Native and GraphQLBoosting Data Fetching in Turkish Apps with React Native and GraphQL
Boosting Data Fetching in Turkish Apps with React Native and GraphQL
Shiv Technolabs Pvt. Ltd.
?
Scaling your GraphQL applications with Dgraph
Scaling your GraphQL applications with DgraphScaling your GraphQL applications with Dgraph
Scaling your GraphQL applications with Dgraph
Karthic Rao
?
How easy (or hard) it is to monitor your graph ql service performance
How easy (or hard) it is to monitor your graph ql service performanceHow easy (or hard) it is to monitor your graph ql service performance
How easy (or hard) it is to monitor your graph ql service performance
Red Hat
?
Testing and Developing GraphQL APIs
Testing and Developing GraphQL APIsTesting and Developing GraphQL APIs
Testing and Developing GraphQL APIs
Postman
?
GraphQL research summary
GraphQL research summaryGraphQL research summary
GraphQL research summary
Objectivity
?
Boost your APIs with GraphQL 1.0
Boost your APIs with GraphQL 1.0Boost your APIs with GraphQL 1.0
Boost your APIs with GraphQL 1.0
Ot¨¢vio Santana
?
Dubai Dreamin '24 - Exploring the Power of Salesforce GraphQL
Dubai Dreamin '24 - Exploring the Power of Salesforce GraphQLDubai Dreamin '24 - Exploring the Power of Salesforce GraphQL
Dubai Dreamin '24 - Exploring the Power of Salesforce GraphQL
Tarandeep Singh
?
Getting Started with Spring for GraphQL
Getting Started with Spring for GraphQLGetting Started with Spring for GraphQL
Getting Started with Spring for GraphQL
VMware Tanzu
?

Recently uploaded (20)

DealBook of Ukraine: 2025 edition | AVentures Capital
DealBook of Ukraine: 2025 edition | AVentures CapitalDealBook of Ukraine: 2025 edition | AVentures Capital
DealBook of Ukraine: 2025 edition | AVentures Capital
Yevgen Sysoyev
?
Fl studio crack version 12.9 Free Download
Fl studio crack version 12.9 Free DownloadFl studio crack version 12.9 Free Download
Fl studio crack version 12.9 Free Download
kherorpacca127
?
Early Adopter's Guide to AI Moderation (Preview)
Early Adopter's Guide to AI Moderation (Preview)Early Adopter's Guide to AI Moderation (Preview)
Early Adopter's Guide to AI Moderation (Preview)
nick896721
?
1.1. Evolution-and-Scope-of-Business-Analytics.pptx
1.1. Evolution-and-Scope-of-Business-Analytics.pptx1.1. Evolution-and-Scope-of-Business-Analytics.pptx
1.1. Evolution-and-Scope-of-Business-Analytics.pptx
Jitendra Tomar
?
DAO UTokyo 2025 DLT mass adoption case studies IBM Tsuyoshi Hirayama (ƽɽÒã)
DAO UTokyo 2025 DLT mass adoption case studies IBM Tsuyoshi Hirayama (ƽɽÒã)DAO UTokyo 2025 DLT mass adoption case studies IBM Tsuyoshi Hirayama (ƽɽÒã)
DAO UTokyo 2025 DLT mass adoption case studies IBM Tsuyoshi Hirayama (ƽɽÒã)
Tsuyoshi Hirayama
?
FinTech - US Annual Funding Report - 2024.pptx
FinTech - US Annual Funding Report - 2024.pptxFinTech - US Annual Funding Report - 2024.pptx
FinTech - US Annual Funding Report - 2024.pptx
Tracxn
?
MIND Revenue Release Quarter 4 2024 - Finacial Presentation
MIND Revenue Release Quarter 4 2024 - Finacial PresentationMIND Revenue Release Quarter 4 2024 - Finacial Presentation
MIND Revenue Release Quarter 4 2024 - Finacial Presentation
MIND CTI
?
Wondershare Dr.Fone Crack Free Download 2025
Wondershare Dr.Fone Crack Free Download 2025Wondershare Dr.Fone Crack Free Download 2025
Wondershare Dr.Fone Crack Free Download 2025
maharajput103
?
Technology use over time and its impact on consumers and businesses.pptx
Technology use over time and its impact on consumers and businesses.pptxTechnology use over time and its impact on consumers and businesses.pptx
Technology use over time and its impact on consumers and businesses.pptx
kaylagaze
?
THE BIG TEN BIOPHARMACEUTICAL MNCs: GLOBAL CAPABILITY CENTERS IN INDIA
THE BIG TEN BIOPHARMACEUTICAL MNCs: GLOBAL CAPABILITY CENTERS IN INDIATHE BIG TEN BIOPHARMACEUTICAL MNCs: GLOBAL CAPABILITY CENTERS IN INDIA
THE BIG TEN BIOPHARMACEUTICAL MNCs: GLOBAL CAPABILITY CENTERS IN INDIA
Srivaanchi Nathan
?
Q4 2024 Earnings and Investor Presentation
Q4 2024 Earnings and Investor PresentationQ4 2024 Earnings and Investor Presentation
Q4 2024 Earnings and Investor Presentation
Dropbox
?
The Future of Repair: Transparent and Incremental by Botond De?nes
The Future of Repair: Transparent and Incremental by Botond De?nesThe Future of Repair: Transparent and Incremental by Botond De?nes
The Future of Repair: Transparent and Incremental by Botond De?nes
ScyllaDB
?
Transform Your Future with Front-End Development Training
Transform Your Future with Front-End Development TrainingTransform Your Future with Front-End Development Training
Transform Your Future with Front-End Development Training
Vtechlabs
?
UiPath Agentic Automation Capabilities and Opportunities
UiPath Agentic Automation Capabilities and OpportunitiesUiPath Agentic Automation Capabilities and Opportunities
UiPath Agentic Automation Capabilities and Opportunities
DianaGray10
?
SMART SENTRY CYBER THREAT INTELLIGENCE IN IIOT
SMART SENTRY CYBER THREAT INTELLIGENCE IN IIOTSMART SENTRY CYBER THREAT INTELLIGENCE IN IIOT
SMART SENTRY CYBER THREAT INTELLIGENCE IN IIOT
TanmaiArni
?
Cloud of everything Tech of the 21 century in Aviation
Cloud of everything Tech of the 21 century in AviationCloud of everything Tech of the 21 century in Aviation
Cloud of everything Tech of the 21 century in Aviation
Assem mousa
?
Q4_TLE-7-Lesson-6-Week-6.pptx 4th quarter
Q4_TLE-7-Lesson-6-Week-6.pptx 4th quarterQ4_TLE-7-Lesson-6-Week-6.pptx 4th quarter
Q4_TLE-7-Lesson-6-Week-6.pptx 4th quarter
MariaBarbaraPaglinaw
?
UiPath Document Understanding - Generative AI and Active learning capabilities
UiPath Document Understanding - Generative AI and Active learning capabilitiesUiPath Document Understanding - Generative AI and Active learning capabilities
UiPath Document Understanding - Generative AI and Active learning capabilities
DianaGray10
?
Brave Browser Crack 1.45.133 Activated 2025
Brave Browser Crack 1.45.133 Activated 2025Brave Browser Crack 1.45.133 Activated 2025
Brave Browser Crack 1.45.133 Activated 2025
kherorpacca00126
?
A Framework for Model-Driven Digital Twin Engineering
A Framework for Model-Driven Digital Twin EngineeringA Framework for Model-Driven Digital Twin Engineering
A Framework for Model-Driven Digital Twin Engineering
Daniel Lehner
?
DealBook of Ukraine: 2025 edition | AVentures Capital
DealBook of Ukraine: 2025 edition | AVentures CapitalDealBook of Ukraine: 2025 edition | AVentures Capital
DealBook of Ukraine: 2025 edition | AVentures Capital
Yevgen Sysoyev
?
Fl studio crack version 12.9 Free Download
Fl studio crack version 12.9 Free DownloadFl studio crack version 12.9 Free Download
Fl studio crack version 12.9 Free Download
kherorpacca127
?
Early Adopter's Guide to AI Moderation (Preview)
Early Adopter's Guide to AI Moderation (Preview)Early Adopter's Guide to AI Moderation (Preview)
Early Adopter's Guide to AI Moderation (Preview)
nick896721
?
1.1. Evolution-and-Scope-of-Business-Analytics.pptx
1.1. Evolution-and-Scope-of-Business-Analytics.pptx1.1. Evolution-and-Scope-of-Business-Analytics.pptx
1.1. Evolution-and-Scope-of-Business-Analytics.pptx
Jitendra Tomar
?
DAO UTokyo 2025 DLT mass adoption case studies IBM Tsuyoshi Hirayama (ƽɽÒã)
DAO UTokyo 2025 DLT mass adoption case studies IBM Tsuyoshi Hirayama (ƽɽÒã)DAO UTokyo 2025 DLT mass adoption case studies IBM Tsuyoshi Hirayama (ƽɽÒã)
DAO UTokyo 2025 DLT mass adoption case studies IBM Tsuyoshi Hirayama (ƽɽÒã)
Tsuyoshi Hirayama
?
FinTech - US Annual Funding Report - 2024.pptx
FinTech - US Annual Funding Report - 2024.pptxFinTech - US Annual Funding Report - 2024.pptx
FinTech - US Annual Funding Report - 2024.pptx
Tracxn
?
MIND Revenue Release Quarter 4 2024 - Finacial Presentation
MIND Revenue Release Quarter 4 2024 - Finacial PresentationMIND Revenue Release Quarter 4 2024 - Finacial Presentation
MIND Revenue Release Quarter 4 2024 - Finacial Presentation
MIND CTI
?
Wondershare Dr.Fone Crack Free Download 2025
Wondershare Dr.Fone Crack Free Download 2025Wondershare Dr.Fone Crack Free Download 2025
Wondershare Dr.Fone Crack Free Download 2025
maharajput103
?
Technology use over time and its impact on consumers and businesses.pptx
Technology use over time and its impact on consumers and businesses.pptxTechnology use over time and its impact on consumers and businesses.pptx
Technology use over time and its impact on consumers and businesses.pptx
kaylagaze
?
THE BIG TEN BIOPHARMACEUTICAL MNCs: GLOBAL CAPABILITY CENTERS IN INDIA
THE BIG TEN BIOPHARMACEUTICAL MNCs: GLOBAL CAPABILITY CENTERS IN INDIATHE BIG TEN BIOPHARMACEUTICAL MNCs: GLOBAL CAPABILITY CENTERS IN INDIA
THE BIG TEN BIOPHARMACEUTICAL MNCs: GLOBAL CAPABILITY CENTERS IN INDIA
Srivaanchi Nathan
?
Q4 2024 Earnings and Investor Presentation
Q4 2024 Earnings and Investor PresentationQ4 2024 Earnings and Investor Presentation
Q4 2024 Earnings and Investor Presentation
Dropbox
?
The Future of Repair: Transparent and Incremental by Botond De?nes
The Future of Repair: Transparent and Incremental by Botond De?nesThe Future of Repair: Transparent and Incremental by Botond De?nes
The Future of Repair: Transparent and Incremental by Botond De?nes
ScyllaDB
?
Transform Your Future with Front-End Development Training
Transform Your Future with Front-End Development TrainingTransform Your Future with Front-End Development Training
Transform Your Future with Front-End Development Training
Vtechlabs
?
UiPath Agentic Automation Capabilities and Opportunities
UiPath Agentic Automation Capabilities and OpportunitiesUiPath Agentic Automation Capabilities and Opportunities
UiPath Agentic Automation Capabilities and Opportunities
DianaGray10
?
SMART SENTRY CYBER THREAT INTELLIGENCE IN IIOT
SMART SENTRY CYBER THREAT INTELLIGENCE IN IIOTSMART SENTRY CYBER THREAT INTELLIGENCE IN IIOT
SMART SENTRY CYBER THREAT INTELLIGENCE IN IIOT
TanmaiArni
?
Cloud of everything Tech of the 21 century in Aviation
Cloud of everything Tech of the 21 century in AviationCloud of everything Tech of the 21 century in Aviation
Cloud of everything Tech of the 21 century in Aviation
Assem mousa
?
Q4_TLE-7-Lesson-6-Week-6.pptx 4th quarter
Q4_TLE-7-Lesson-6-Week-6.pptx 4th quarterQ4_TLE-7-Lesson-6-Week-6.pptx 4th quarter
Q4_TLE-7-Lesson-6-Week-6.pptx 4th quarter
MariaBarbaraPaglinaw
?
UiPath Document Understanding - Generative AI and Active learning capabilities
UiPath Document Understanding - Generative AI and Active learning capabilitiesUiPath Document Understanding - Generative AI and Active learning capabilities
UiPath Document Understanding - Generative AI and Active learning capabilities
DianaGray10
?
Brave Browser Crack 1.45.133 Activated 2025
Brave Browser Crack 1.45.133 Activated 2025Brave Browser Crack 1.45.133 Activated 2025
Brave Browser Crack 1.45.133 Activated 2025
kherorpacca00126
?
A Framework for Model-Driven Digital Twin Engineering
A Framework for Model-Driven Digital Twin EngineeringA Framework for Model-Driven Digital Twin Engineering
A Framework for Model-Driven Digital Twin Engineering
Daniel Lehner
?

GraphQL Fundamentals

  • 1. ? 2021 GraphQL, Inc. Page | 1 GraphQL Fundamentals
  • 2. ? 2021 GraphQL. . Page | 2 Senior Software Engineer at BORN Group Virbhadra S. Ankalkote
  • 3. ? 2021 GraphQL Page | 3 Agenda
  • 4. ? 2021 GraphQL Page | 4 Agenda { graphql:{ what who why how } }
  • 5. ? 2021 GraphQL Page | 5 What ?
  • 6. ? 2021 GraphQL Page | 6 ¡°GraphQL is a query language for APIs, and a runtime for ful?lling those queries with existing data ¡±
  • 7. ? 2021 GraphQL Page | 7 Who ?
  • 8. ? 2021 GraphQL Page | 8 ¡°In 2012, Facebook develop the GraphQL technology for their native mobile app¡± .
  • 9. ? 2021 GraphQL Page | 9 . 2012 2015 2017..2018...2020 Development Started Open Source Evolving Specification. Timeline
  • 10. ? 2021 GraphQL Page | 10 Why?
  • 11. ? 2021 GraphQL Page | 11 Application Programming Interface (API)
  • 12. ? 2021 GraphQL Page | 12 REST Flow
  • 13. ? 2021 GraphQL Page | 13 Principles of REST API Design
  • 14. ? 2021 GraphQL Page | 14
  • 15. ? 2021 GraphQL Page | 15 GraphQL Flow
  • 16. ? 2021 GraphQL Page | 16
  • 17. ? 2021 GraphQL Page | 17 Browser Tools
  • 18. ? 2021 GraphQL Page | 18
  • 19. ? 2021 GraphQL Page | 19 GraphQL Playground
  • 20. ? 2021 GraphQL Page | 20 How?
  • 21. ? 2021 GraphQL Page | 21
  • 22. ? 2021 GraphQL Page | 22
  • 23. ? 2021 GraphQL Page | 23
  • 24. ? 2021 GraphQL Page | 24
  • 25. ? 2021 GraphQL Page | 25 Limitations
  • 26. ? 2021 GraphQL Page | 26
  • 27. ? 2021 GraphQL Page | 27 Reading Data
  • 28. ? 2021 GraphQL Page | 28
  • 29. ? 2021 GraphQL Page | 29
  • 30. ? 2021 GraphQL Page | 30
  • 31. ? 2021 GraphQL Page | 31
  • 32. ? 2021 GraphQL Page | 32 Writing Data ( Mutation )
  • 33. ? 2021 GraphQL Page | 33
  • 34. ? 2021 GraphQL Page | 34
  • 35. ? 2021 GraphQL Page | 35
  • 36. ? 2021 GraphQL Page | 36 GraphQL Variables
  • 37. ? 2021 GraphQL Page | 37 ? In GraphQL, you can use variables to reuse the same query/mutations written by the client, with different arguments. ? When we start working with variables, we need to do three things: ¨C Replace the static value in the query with $variableName ¨C Declare $variableName as one of the variables accepted by the query ¨C Pass variableName: value in the separate, transport-speci?c (usually JSON) variables dictionary
  • 38. ? 2021 GraphQL Page | 38 GraphQL Fragments
  • 39. ? 2021 GraphQL Page | 39 ? A GraphQL fragment is a piece of logic that a client can share between multiple queries and mutations. ? In GraphQL, you often need to query for the same data ?elds in different queries. ? By reusing this code, we can be more ef?cient with our time and reuse these piece of queries
  • 40. ? 2021 GraphQL Page | 40
  • 41. ? 2021 GraphQL Page | 41 Pain Points of GraphQL
  • 42. ? 2021 GraphQL Page | 42 Almost impossible to solve ¡ñ Query In Inde?nite Depth ¨C GraphQL cannot query in inde?nite depth, so if you have a tree and want to return a branch without knowing the depth, you¡¯ll have to do some pagination ¡ñ Speci?c Response Structure ¨C In GraphQL the response matches the shape of the query, so if you need to respond in a very speci?c structure, you'll have to add a transformation layer to reshape the response.
  • 43. ? 2021 GraphQL Page | 43 Hard to solve ¡ñ Cache at Network Level ¨C Because of the commonly way GraphQL is used over HTTP (A POST in a single endpoint), cache at network level becomes hard. A way to solve it is to use Persisted Queries. ¡ñ Handling File Upload ¨C There is nothing about ?le upload in the GraphQL speci?cation and mutations doesn¡¯t accept ?les in the arguments. To solve it you can upload ?les using other kind of APIs (like REST) and pass the URL of the uploaded ?le to the GraphQL mutation, or inject the ?le in the execution context, so you¡¯ll have the ?le inside the resolver functions.
  • 44. ? 2021 GraphQL Page | 44 Questions ?
  • 45. ? 2021 GraphQL Page | 45 Thank You