SlideShare a Scribd company logo
1 of 54
Download to read offline
백성훈 Seonghoon Baek
GraphQL 이란
•API
•Query Language
•Type System
•Schema Definition Language
•Thinking in Graph
•GraphQL Flow
GraphQL이란?
A Collective list of public GraphQLAPIs
Who use GraphQL?
WHAT IS GRAPHQL?
ref: GraphQL.org
“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”
“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”
Type SystemQuery LanguageAPI
“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”
API
API
Web API
Request
Response
Web API
Request
Response
“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”
Type SystemQuery LanguageAPI
Query Language
{
avatar: ‘….png’,
issue: [
{
id: 1,
content: ‘이슈1’
}
]
}
GraphQL API
Query Language
Server
query
Response
Query Language
Client
profile정보 중에 name, id만 줘
name, id
Query의 기본구조
Query Language
query{
profile(id=“Lutece”) {
name
}
}
query{
Query Name(arg: value) {

field
}
}
Query
{
profile(id=“Lutece”) {
name
}
}
{
data: {
“profile”: {
“name”: “SeonghoonBaek”
}
}
}
Response
Query Language
Query Language
Client Query Server Response
데이터의 응답 형태를 예측할 수 있다.
클라이언트에 최적화된 데이터 형태를 가져올 수 있다.
Query Language
“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”
Type SystemQuery LanguageAPI
Type System
Type System
Schema Definition Language
데이터의 구조와 데이터간의 관계를 정의하는 방법
Type System
Type System
Query
{
profile(id=“Lutece”) {
name
}
}
Type
type User {
name: String
id: String
}
Type
type Query {
profile(id: String): User
}
Type System
Type (Object)
type User {
name: String
}
Scalar Type
1.INT
2.String
3.Float
4.ID
5.Enum
6.Boolean
Shape
1.list = [INT]
2.interface
3.Union
4.fragment
5.alias
6.! = Non-Null
Type System
Type
type User {
name: String
}
Scalar Type
1.INT
2.String
3.Float
4.ID
5.Enum
6.Boolean
Custom Type
Type System
Query
{
profile(id=“Lutece”) {
name
}
}
Type
type User {
name: String
id: String
}
Type
type Query {
profile(id: String): User
}
응답 데이터의 타입 추론이 가능하다
Type System
type User {
name: String
avatar: Url
age: Int
createdAt: Date
id: String
}
type Query {
profile(id: String): User
}
Server
Client
type User {
name: String
avatar: Url
age: Int
createdAt: Date
id: String
}
{
profile(id=“Lutece”)
{
name
}
}
type Query {
profile(id: String): User
}
Server
Client
type User {
name: String
avatar: Url
age: Int
createdAt: Date
id: String
}
{
profile(id=“Lutece”)
{
name
}
}
type Query {
profile(id: String): User
}
Server
query
Client
type User {
name: String
avatar: Url
age: Int
createdAt: Date
id: String
}
{
profile(id=“Lutece”)
{
name
}
}
type Query {
profile(id: String): User
…
}
Server
query
Resolver
Type System
resolver: {
Query: {
profile: (obj, args, context, info){
const profileList = … (from DB, 외부 API..)
return profileList
.find(({ id }) => id === args.id)
},

profiles: () {…}
articles: () {…}
}
}
Resolver
Type System
{
profile(id=“Lutece”) {
name
}
}
Query
resolver: {
Query: {
profile: (obj, args, context, info){
const profileList = … (from DB, 외부 API..)
return profileList
.find(({ id }) => id === args.id)
},

profiles: () {…}
articles: () {…}
}
}
Resolver
Type System
{
profile(id=“Lutece”) {
name
}
}
Query
resolver: {
Query: {
profile: (obj, args, context, info){
const profileList = … (from DB, 외부 API..)
return profileList
.find(({ id }) => id === args.id)
},

profiles: () {…}
articles: () {…}
}
}
Resolver
type User {
name: String
avatar: Url
age: Int
createdAt: Date
id: String
}
type Query {
profile(id: String): User
…
}
Type System
Type System
{
profile(id=“Lutece”) {
name
}
}
Query
resolver: {
Query: {
profile: (obj, args, context, info){
const profileList = … (from DB, 외부 API..)
return profileList
.find(({ id }) => id === args.id)
},

profiles: () {…}
articles: () {…}
}
}
Resolver
type User {
name: String
avatar: Url
age: Int
createdAt: Date
id: String
}
type Query {
profile(id: String): User
…
}
Type System
Type System
{
profile(id=“Lutece”) {
name
}
}
Query
resolver: {
Query: {
profile: (obj, args, context, info){
const profileList = … (from DB, 외부 API..)
return profileList
.find(({ id }) => id === args.id)
},

profiles: () {…}
articles: () {…}
}
}
Resolver
type User {
name: String
avatar: Url
age: Int
createdAt: Date
id: String
}
type Query {
profile(id: String): User
…
}
Type System
{
data: {
“profile”: {
“name”: “SeonghoonBaek”
}
}
}
Client
type User {
name: String
avatar: Url
age: Int
createdAt: Date
id: String
}
{
profile(id=“Lutece”)
{
name
}
}
type Query {
profile(id: String): User
}
Server
query
Resolver
{
data: {
“profile”: {
“name”: “SeonghoonBaek”
}
}
}
Web API
Github v4 explorer
Thinking in Graphs
Graph
type User {
name: String
id: String
contact: Contact
}
type Contact {
phone: String
home: String
}
Thinking in Graph
Thinking in Graph
Data Graph
추상화
Type
Type
Type
Type
Data Graph
추상화
Type
Type
Type
Type
Tree
Query
data
Thinking in Graph
With GraphQL, you model your business domain as a graph
GraphQL Flow
GraphQL Flow
Resource
Resource
GraphQL Flow
type User {
name: String
avatar: Url
age: Int
createdAt: Date
id: String
}
type Query {
profile(id: String): User
}
GraphQL Flow
type User {
name: String
avatar: Url
age: Int
createdAt: Date
id: String
}
type Query {
profile(id: String): User
}
GraphQL Flow
type User {
name: String
avatar: Url
age: Int
createdAt: Date
id: String
}
type Query {
profile(id: String): User
}
{
profile(id=“Lutece”) {
name
avatar
age
createdAt
}
}
{
profile(id=“Lutece”) {
avatar
name
}
}
GraphQL Flow
type User {
name: String
avatar: Url
age: Int
createdAt: Date
id: String
}
type Query {
profile(id: String): User
}
{
profile(id=“Lutece”) {
name
avatar
age
createdAt
}
}
{
profile(id=“Lutece”) {
avatar
name
}
}
{
data: {
“profile”: {
“name”: “SeonghoonBaek”
“age” : 29
“avatar” : “https:…”
“createdAt: “19..”
“id”: “123123”
}
}
}
{
data: {
“profile”: {
“name”: “SeonghoonBaek”
“avatar” : “https:…”
}
}
}
Resolver
감사합니다 .

More Related Content

Similar to GraphQL이란?

What/How to do with GraphQL? - Valentyn Ostakh (ENG) | Ruby Meditation 27
What/How to do with GraphQL? - Valentyn Ostakh (ENG) | Ruby Meditation 27What/How to do with GraphQL? - Valentyn Ostakh (ENG) | Ruby Meditation 27
What/How to do with GraphQL? - Valentyn Ostakh (ENG) | Ruby Meditation 27Ruby Meditation
 
Introducing AWS AppSync: serverless data driven apps with real-time and offli...
Introducing AWS AppSync: serverless data driven apps with real-time and offli...Introducing AWS AppSync: serverless data driven apps with real-time and offli...
Introducing AWS AppSync: serverless data driven apps with real-time and offli...Amazon Web Services
 
The Serverless GraphQL Backend Architecture
The Serverless GraphQL Backend ArchitectureThe Serverless GraphQL Backend Architecture
The Serverless GraphQL Backend ArchitectureNikolas Burk
 
Development of Twitter Application #5 - Users
Development of Twitter Application #5 - UsersDevelopment of Twitter Application #5 - Users
Development of Twitter Application #5 - UsersMyungjin Lee
 
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...ForgeRock
 
Overview of GraphQL & Clients
Overview of GraphQL & ClientsOverview of GraphQL & Clients
Overview of GraphQL & ClientsPokai Chang
 
Java Script Based Client Server Webapps 2
Java Script Based Client Server Webapps 2Java Script Based Client Server Webapps 2
Java Script Based Client Server Webapps 2kriszyp
 
Testing swagger contracts without contract based testing
Testing swagger contracts without contract based testingTesting swagger contracts without contract based testing
Testing swagger contracts without contract based testingАлексей Стягайло
 
Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...
Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...
Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...All Things Open
 
Java 8 Streams and Rx Java Comparison
Java 8 Streams and Rx Java ComparisonJava 8 Streams and Rx Java Comparison
Java 8 Streams and Rx Java ComparisonJosé Paumard
 
Hypermedia APIs and HATEOAS / Wix Engineering
Hypermedia APIs and HATEOAS / Wix EngineeringHypermedia APIs and HATEOAS / Wix Engineering
Hypermedia APIs and HATEOAS / Wix EngineeringVladimir Tsukur
 
Using OpenURL Activity Data - Activity Data Online Exchange Event
Using OpenURL Activity Data - Activity Data Online Exchange EventUsing OpenURL Activity Data - Activity Data Online Exchange Event
Using OpenURL Activity Data - Activity Data Online Exchange EventEDINA, University of Edinburgh
 
Computational Social Science, Lecture 09: Data Wrangling
Computational Social Science, Lecture 09: Data WranglingComputational Social Science, Lecture 09: Data Wrangling
Computational Social Science, Lecture 09: Data Wranglingjakehofman
 

Similar to GraphQL이란? (20)

.Net 3.5
.Net 3.5.Net 3.5
.Net 3.5
 
What/How to do with GraphQL? - Valentyn Ostakh (ENG) | Ruby Meditation 27
What/How to do with GraphQL? - Valentyn Ostakh (ENG) | Ruby Meditation 27What/How to do with GraphQL? - Valentyn Ostakh (ENG) | Ruby Meditation 27
What/How to do with GraphQL? - Valentyn Ostakh (ENG) | Ruby Meditation 27
 
GraphQL with Spring Boot
GraphQL with Spring BootGraphQL with Spring Boot
GraphQL with Spring Boot
 
Introducing AWS AppSync: serverless data driven apps with real-time and offli...
Introducing AWS AppSync: serverless data driven apps with real-time and offli...Introducing AWS AppSync: serverless data driven apps with real-time and offli...
Introducing AWS AppSync: serverless data driven apps with real-time and offli...
 
The Serverless GraphQL Backend Architecture
The Serverless GraphQL Backend ArchitectureThe Serverless GraphQL Backend Architecture
The Serverless GraphQL Backend Architecture
 
Development of Twitter Application #5 - Users
Development of Twitter Application #5 - UsersDevelopment of Twitter Application #5 - Users
Development of Twitter Application #5 - Users
 
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
 
Overview of GraphQL & Clients
Overview of GraphQL & ClientsOverview of GraphQL & Clients
Overview of GraphQL & Clients
 
Linq intro
Linq introLinq intro
Linq intro
 
Java Script Based Client Server Webapps 2
Java Script Based Client Server Webapps 2Java Script Based Client Server Webapps 2
Java Script Based Client Server Webapps 2
 
Testing swagger contracts without contract based testing
Testing swagger contracts without contract based testingTesting swagger contracts without contract based testing
Testing swagger contracts without contract based testing
 
Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...
Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...
Weaving Microservices into a Unified GraphQL Schema with graph-quilt - Ashpak...
 
Java 8 Streams and Rx Java Comparison
Java 8 Streams and Rx Java ComparisonJava 8 Streams and Rx Java Comparison
Java 8 Streams and Rx Java Comparison
 
Hypermedia APIs and HATEOAS / Wix Engineering
Hypermedia APIs and HATEOAS / Wix EngineeringHypermedia APIs and HATEOAS / Wix Engineering
Hypermedia APIs and HATEOAS / Wix Engineering
 
Advanced Json
Advanced JsonAdvanced Json
Advanced Json
 
Elasticsearch
ElasticsearchElasticsearch
Elasticsearch
 
Avro introduction
Avro introductionAvro introduction
Avro introduction
 
SCIM and VOOT
SCIM and VOOTSCIM and VOOT
SCIM and VOOT
 
Using OpenURL Activity Data - Activity Data Online Exchange Event
Using OpenURL Activity Data - Activity Data Online Exchange EventUsing OpenURL Activity Data - Activity Data Online Exchange Event
Using OpenURL Activity Data - Activity Data Online Exchange Event
 
Computational Social Science, Lecture 09: Data Wrangling
Computational Social Science, Lecture 09: Data WranglingComputational Social Science, Lecture 09: Data Wrangling
Computational Social Science, Lecture 09: Data Wrangling
 

More from 성훈 백

GDSC_백성훈.pdf
GDSC_백성훈.pdfGDSC_백성훈.pdf
GDSC_백성훈.pdf성훈 백
 
Frontend test-environment 이해하기
Frontend test-environment 이해하기Frontend test-environment 이해하기
Frontend test-environment 이해하기성훈 백
 
CSS Rendering - 1
CSS Rendering - 1CSS Rendering - 1
CSS Rendering - 1성훈 백
 

More from 성훈 백 (6)

GDSC_백성훈.pdf
GDSC_백성훈.pdfGDSC_백성훈.pdf
GDSC_백성훈.pdf
 
Frontend test-environment 이해하기
Frontend test-environment 이해하기Frontend test-environment 이해하기
Frontend test-environment 이해하기
 
Css system
Css systemCss system
Css system
 
Es6 module
Es6 moduleEs6 module
Es6 module
 
CSS와 BEM
CSS와 BEMCSS와 BEM
CSS와 BEM
 
CSS Rendering - 1
CSS Rendering - 1CSS Rendering - 1
CSS Rendering - 1
 

Recently uploaded

Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxnada99848
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 

Recently uploaded (20)

Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptx
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 

GraphQL이란?