SlideShare a Scribd company logo
1 of 14
Introduction to
graphqlM Danil Rafiqi
Apa itu graphql ?
Kelebihan graphql
Kekurangan graphql
GraphQL vs REST ?
Terminologi di graphql
-Schema
-Resolver
-Query
-Mutation
Example
“A query language for your API”
Apa itu graphql ?
GraphQL adalah sebuah bahasa kueri untuk API dan runtime untuk
memenuhi kueri tersebut dengan data yang ada, dengan deskripsi
data yang lengkap dan mudah dimengerti, yang memungkinkan klien
meminta data sesuai yang mereka butuhkan dan tidak berlebihan.
GraphQL hampir mirip dengan REST namun dengan konsep baru
yang membuat kita lebih leluasa untuk mendapatkan data yang kita
inginkan. Tidak seperti API yang terkadang memberikan data yang kita
tidak butuhkan dan dapat memperlambat proses pengambilan data.
 Kelebihan
 Klien memiliki kemampuan untuk menentukan data apa yang
mereka terima dari server
 Kemampuan untuk mengambil banyak data dalam satu
permintaan
 Klien mengetahui data apa yang akan diterima
 Auto Generate Dokumentasi API
 Kekurangan
 Limiting
 Caching
 Cant handling File Upload
 Nested queries in graphql can crash the server
vs
REST GraphQL
Schema
Schema pada graphql menjelaskan mengenai jenis operasi yang
tersedias seperti query, mutation, dan subscription.
Resolver
Resolver adalah fungsi yang mengembalikan nilai berdasarkan skema.
Resolver dapat mengembalikan objek atau skalar seperti Strings,
Numbers, Booleans, dll.
Query
Operasi untuk membaca data / melihat data
Mutation
Operasi untuk menulis data
DEMO
1) Buat Project
 mkdir berita
 cd berita
 npm init
2) Install dependency
 npm install express express-graphql graphql knex mysql
3. Buat struktur file
Pengenalan Apa itu GraphQL - Introduction to GraphQL

More Related Content

What's hot

Esai Revolusi Teknologi Informasi Dan Kaitanya Dengan Sumber DayaManusia
Esai Revolusi Teknologi Informasi Dan Kaitanya Dengan Sumber DayaManusiaEsai Revolusi Teknologi Informasi Dan Kaitanya Dengan Sumber DayaManusia
Esai Revolusi Teknologi Informasi Dan Kaitanya Dengan Sumber DayaManusiaIchsan Smith
 
Proposal Proyek Aplikasi Web Percetakan
Proposal Proyek Aplikasi Web PercetakanProposal Proyek Aplikasi Web Percetakan
Proposal Proyek Aplikasi Web Percetakansubhan
 
Digital forensik investigasi
Digital forensik investigasiDigital forensik investigasi
Digital forensik investigasirozita izan
 
Penjelasan listing program
Penjelasan listing programPenjelasan listing program
Penjelasan listing programPenyiar Unpab
 
REVIEW ANATOMI DAN FISIOLOGI
REVIEW ANATOMI DAN FISIOLOGIREVIEW ANATOMI DAN FISIOLOGI
REVIEW ANATOMI DAN FISIOLOGIdr. Rachel Sagrim
 
Materi Pelatihan_Steganografi Metode LSB
Materi Pelatihan_Steganografi Metode LSBMateri Pelatihan_Steganografi Metode LSB
Materi Pelatihan_Steganografi Metode LSBAgung Sulistyanto
 
Proses Pengembangan Perangkat Lunak (SDLC)
Proses Pengembangan Perangkat Lunak (SDLC)Proses Pengembangan Perangkat Lunak (SDLC)
Proses Pengembangan Perangkat Lunak (SDLC)Rasyeda Aufa
 
PPT Himpunan Matematika Diskrit
PPT Himpunan Matematika DiskritPPT Himpunan Matematika Diskrit
PPT Himpunan Matematika DiskritSigitpga
 
Analisa website Traveloka - Tugas IMK
Analisa website Traveloka - Tugas IMKAnalisa website Traveloka - Tugas IMK
Analisa website Traveloka - Tugas IMKMiftahul Muttaqin
 
BAB 2 : KALIMAT BERKUANTOR
BAB 2 : KALIMAT BERKUANTORBAB 2 : KALIMAT BERKUANTOR
BAB 2 : KALIMAT BERKUANTORMustahal SSi
 
Proposal Project Pengembangan Sistem Informasi
Proposal Project Pengembangan Sistem InformasiProposal Project Pengembangan Sistem Informasi
Proposal Project Pengembangan Sistem InformasiDesty Yani
 
Penerapan pengolahan citra dalam bidang kedokteran
Penerapan pengolahan citra dalam bidang kedokteranPenerapan pengolahan citra dalam bidang kedokteran
Penerapan pengolahan citra dalam bidang kedokteranBaguss Chandrass
 
E-Commerce Chap 4: BUILDING AN E-COMMERCE PRESENCE: WEB SITES, MOBILE SITES, ...
E-Commerce Chap 4: BUILDING AN E-COMMERCE PRESENCE: WEB SITES, MOBILE SITES, ...E-Commerce Chap 4: BUILDING AN E-COMMERCE PRESENCE: WEB SITES, MOBILE SITES, ...
E-Commerce Chap 4: BUILDING AN E-COMMERCE PRESENCE: WEB SITES, MOBILE SITES, ...Shandy Aditya
 

What's hot (14)

Esai Revolusi Teknologi Informasi Dan Kaitanya Dengan Sumber DayaManusia
Esai Revolusi Teknologi Informasi Dan Kaitanya Dengan Sumber DayaManusiaEsai Revolusi Teknologi Informasi Dan Kaitanya Dengan Sumber DayaManusia
Esai Revolusi Teknologi Informasi Dan Kaitanya Dengan Sumber DayaManusia
 
Proposal Proyek Aplikasi Web Percetakan
Proposal Proyek Aplikasi Web PercetakanProposal Proyek Aplikasi Web Percetakan
Proposal Proyek Aplikasi Web Percetakan
 
Digital forensik investigasi
Digital forensik investigasiDigital forensik investigasi
Digital forensik investigasi
 
Penjelasan listing program
Penjelasan listing programPenjelasan listing program
Penjelasan listing program
 
REVIEW ANATOMI DAN FISIOLOGI
REVIEW ANATOMI DAN FISIOLOGIREVIEW ANATOMI DAN FISIOLOGI
REVIEW ANATOMI DAN FISIOLOGI
 
Materi Pelatihan_Steganografi Metode LSB
Materi Pelatihan_Steganografi Metode LSBMateri Pelatihan_Steganografi Metode LSB
Materi Pelatihan_Steganografi Metode LSB
 
Proses Pengembangan Perangkat Lunak (SDLC)
Proses Pengembangan Perangkat Lunak (SDLC)Proses Pengembangan Perangkat Lunak (SDLC)
Proses Pengembangan Perangkat Lunak (SDLC)
 
Ppt html5
Ppt html5Ppt html5
Ppt html5
 
PPT Himpunan Matematika Diskrit
PPT Himpunan Matematika DiskritPPT Himpunan Matematika Diskrit
PPT Himpunan Matematika Diskrit
 
Analisa website Traveloka - Tugas IMK
Analisa website Traveloka - Tugas IMKAnalisa website Traveloka - Tugas IMK
Analisa website Traveloka - Tugas IMK
 
BAB 2 : KALIMAT BERKUANTOR
BAB 2 : KALIMAT BERKUANTORBAB 2 : KALIMAT BERKUANTOR
BAB 2 : KALIMAT BERKUANTOR
 
Proposal Project Pengembangan Sistem Informasi
Proposal Project Pengembangan Sistem InformasiProposal Project Pengembangan Sistem Informasi
Proposal Project Pengembangan Sistem Informasi
 
Penerapan pengolahan citra dalam bidang kedokteran
Penerapan pengolahan citra dalam bidang kedokteranPenerapan pengolahan citra dalam bidang kedokteran
Penerapan pengolahan citra dalam bidang kedokteran
 
E-Commerce Chap 4: BUILDING AN E-COMMERCE PRESENCE: WEB SITES, MOBILE SITES, ...
E-Commerce Chap 4: BUILDING AN E-COMMERCE PRESENCE: WEB SITES, MOBILE SITES, ...E-Commerce Chap 4: BUILDING AN E-COMMERCE PRESENCE: WEB SITES, MOBILE SITES, ...
E-Commerce Chap 4: BUILDING AN E-COMMERCE PRESENCE: WEB SITES, MOBILE SITES, ...
 

Similar to Pengenalan Apa itu GraphQL - Introduction to GraphQL

Tugas4 [ku]-0316-kahfi arif akbar-1012501571
Tugas4 [ku]-0316-kahfi arif akbar-1012501571Tugas4 [ku]-0316-kahfi arif akbar-1012501571
Tugas4 [ku]-0316-kahfi arif akbar-1012501571kahfi ariep akbar
 
Tugas-4 REKAYASA WEB
Tugas-4 REKAYASA WEBTugas-4 REKAYASA WEB
Tugas-4 REKAYASA WEBElisanendes
 
Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545imeldafelicia
 
Tugas 2 0317-fahreza yozi-1612510832
Tugas 2 0317-fahreza yozi-1612510832Tugas 2 0317-fahreza yozi-1612510832
Tugas 2 0317-fahreza yozi-1612510832fahreza yozi
 
Tugas pemrograman3 rpc,soap,rest_1100631020
Tugas pemrograman3 rpc,soap,rest_1100631020Tugas pemrograman3 rpc,soap,rest_1100631020
Tugas pemrograman3 rpc,soap,rest_1100631020Lucky AnugerahP
 
Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602dewiapril1996
 
Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587nurul azmi
 
Ruby on Rails kel 24
Ruby on Rails kel 24Ruby on Rails kel 24
Ruby on Rails kel 24guestf760d26
 
Tugas 4 rekayasa web
Tugas 4 rekayasa webTugas 4 rekayasa web
Tugas 4 rekayasa webmuslim rohadi
 
Tugas 4 - Rekayasa Web
Tugas 4 - Rekayasa WebTugas 4 - Rekayasa Web
Tugas 4 - Rekayasa Webarisjunedi
 
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSONGITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSONGITS Indonesia
 
#4 REST API.pptx
#4 REST API.pptx#4 REST API.pptx
#4 REST API.pptxGDSC2
 
Tugas 4 rekayasa web
Tugas 4 rekayasa webTugas 4 rekayasa web
Tugas 4 rekayasa webrimaafauziaah
 
Tugas pemr3 1100631014 rpc,soap,rest
Tugas pemr3 1100631014 rpc,soap,restTugas pemr3 1100631014 rpc,soap,rest
Tugas pemr3 1100631014 rpc,soap,restKienda Dwi Ajie
 
Tugas pemr3 1100631014 rpc,soap,rest
Tugas pemr3 1100631014 rpc,soap,restTugas pemr3 1100631014 rpc,soap,rest
Tugas pemr3 1100631014 rpc,soap,restKienda Dwi Ajie
 

Similar to Pengenalan Apa itu GraphQL - Introduction to GraphQL (20)

Tugas4 [ku]-0316-kahfi arif akbar-1012501571
Tugas4 [ku]-0316-kahfi arif akbar-1012501571Tugas4 [ku]-0316-kahfi arif akbar-1012501571
Tugas4 [ku]-0316-kahfi arif akbar-1012501571
 
Tugasindividu5
Tugasindividu5Tugasindividu5
Tugasindividu5
 
Tugas-4 REKAYASA WEB
Tugas-4 REKAYASA WEBTugas-4 REKAYASA WEB
Tugas-4 REKAYASA WEB
 
Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545
 
Tugas 2 0317-fahreza yozi-1612510832
Tugas 2 0317-fahreza yozi-1612510832Tugas 2 0317-fahreza yozi-1612510832
Tugas 2 0317-fahreza yozi-1612510832
 
Tugas pemrograman3 rpc,soap,rest_1100631020
Tugas pemrograman3 rpc,soap,rest_1100631020Tugas pemrograman3 rpc,soap,rest_1100631020
Tugas pemrograman3 rpc,soap,rest_1100631020
 
Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602
 
Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587
 
Ruby on Rails kel 24
Ruby on Rails kel 24Ruby on Rails kel 24
Ruby on Rails kel 24
 
Tugas 4 rekayasa web
Tugas 4 rekayasa webTugas 4 rekayasa web
Tugas 4 rekayasa web
 
Tugas 4 - Rekayasa Web
Tugas 4 - Rekayasa WebTugas 4 - Rekayasa Web
Tugas 4 - Rekayasa Web
 
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSONGITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
 
#4 REST API.pptx
#4 REST API.pptx#4 REST API.pptx
#4 REST API.pptx
 
MIK4237-01.pdf
MIK4237-01.pdfMIK4237-01.pdf
MIK4237-01.pdf
 
API by Sandi Hermawan
API by Sandi HermawanAPI by Sandi Hermawan
API by Sandi Hermawan
 
Tugas 4 rekayasa web
Tugas 4 rekayasa webTugas 4 rekayasa web
Tugas 4 rekayasa web
 
Tugas pemr3 1100631014 rpc,soap,rest
Tugas pemr3 1100631014 rpc,soap,restTugas pemr3 1100631014 rpc,soap,rest
Tugas pemr3 1100631014 rpc,soap,rest
 
Tugas pemr3 1100631014 rpc,soap,rest
Tugas pemr3 1100631014 rpc,soap,restTugas pemr3 1100631014 rpc,soap,rest
Tugas pemr3 1100631014 rpc,soap,rest
 
Rpc, soap,rest
Rpc, soap,restRpc, soap,rest
Rpc, soap,rest
 
Tugas 1 rekweb-0317
Tugas  1 rekweb-0317Tugas  1 rekweb-0317
Tugas 1 rekweb-0317
 

Pengenalan Apa itu GraphQL - Introduction to GraphQL

  • 2. Apa itu graphql ? Kelebihan graphql Kekurangan graphql GraphQL vs REST ? Terminologi di graphql -Schema -Resolver -Query -Mutation Example
  • 3. “A query language for your API” Apa itu graphql ? GraphQL adalah sebuah bahasa kueri untuk API dan runtime untuk memenuhi kueri tersebut dengan data yang ada, dengan deskripsi data yang lengkap dan mudah dimengerti, yang memungkinkan klien meminta data sesuai yang mereka butuhkan dan tidak berlebihan. GraphQL hampir mirip dengan REST namun dengan konsep baru yang membuat kita lebih leluasa untuk mendapatkan data yang kita inginkan. Tidak seperti API yang terkadang memberikan data yang kita tidak butuhkan dan dapat memperlambat proses pengambilan data.
  • 4.
  • 5.
  • 6.  Kelebihan  Klien memiliki kemampuan untuk menentukan data apa yang mereka terima dari server  Kemampuan untuk mengambil banyak data dalam satu permintaan  Klien mengetahui data apa yang akan diterima  Auto Generate Dokumentasi API  Kekurangan  Limiting  Caching  Cant handling File Upload  Nested queries in graphql can crash the server
  • 8.
  • 9.
  • 10. Schema Schema pada graphql menjelaskan mengenai jenis operasi yang tersedias seperti query, mutation, dan subscription. Resolver Resolver adalah fungsi yang mengembalikan nilai berdasarkan skema. Resolver dapat mengembalikan objek atau skalar seperti Strings, Numbers, Booleans, dll. Query Operasi untuk membaca data / melihat data Mutation Operasi untuk menulis data
  • 11. DEMO
  • 12. 1) Buat Project  mkdir berita  cd berita  npm init 2) Install dependency  npm install express express-graphql graphql knex mysql