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勉強会 2017.6.7
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Nobutaka OSHIRO
June 07, 2017
Technology
5
1k
GraphQL勉強会 2017.6.7
2017.6.7に開催した社内勉強会で使用した発表資料です。
Nobutaka OSHIRO
June 07, 2017
Tweet
Share
More Decks by Nobutaka OSHIRO
See All by Nobutaka OSHIRO
190828 VSCode + Remote Development ExtensionでElm爆速開発環境構築
notakaos
0
150
Meteor 1.3 Testing (beta)
notakaos
2
1.5k
Other Decks in Technology
See All in Technology
クラウド × シリコンの Mashup - AWS チップ開発で広がる AI 基盤の選択肢
htokoyo
2
100
メタデータ同期に潜んでいた問題 〜 Cache Stampede 時の Cycle Wait を⾒つけた話
lycorptech_jp
PRO
0
150
vLLM Community Meetup Tokyo #3 オープニングトーク
jpishikawa
0
210
DevOpsエージェントで実現する!! AWS Well-Architected(W-A) を実現するシステム設計 / 20260307 Masaki Okuda
shift_evolve
PRO
3
260
管理者向けGitHub Enterpriseの運用Tips紹介: 人にもAIにも優しいプラットフォームづくり
yuriemori
0
170
AIエージェント・エコノミーの幕開け 〜 オープンプロトコルが変えるビジネスの未来 〜
shukob
0
110
作りっぱなしで終わらせない! 価値を出し続ける AI エージェントのための「信頼性」設計 / Designing Reliability for AI Agents that Deliver Continuous Value
aoto
PRO
1
220
[AEON TECH HUB #24] お客様の長期的興味の理解に向けて
alpicola
0
120
JAWS DAYS 2026 ExaWizards_20260307
exawizards
0
120
大規模サービスにおける レガシーコードからReactへの移行
magicpod
1
170
ビズリーチにおける検索・推薦の取り組み / DEIM2026
visional_engineering_and_design
1
120
オンプレとGoogle Cloudを安全に繋ぐための、セキュア通信の勘所
waiwai2111
3
1.1k
Featured
See All Featured
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
170
Between Models and Reality
mayunak
2
230
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Chasing Engaging Ingredients in Design
codingconduct
0
130
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.4k
Claude Code のすすめ
schroneko
67
220k
エンジニアに許された特別な時間の終わり
watany
106
240k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
130
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
390
GraphQLとの向き合い方2022年版
quramy
50
14k
Mobile First: as difficult as doing things right
swwweet
225
10k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.1k
Transcript
GraphQLษڧձ by Nobutaka OSHIRO 6/7 WED 19:00-21:00
࣍ • GraphQLͱ • GraphQLͷϝϦοτɾσϝϦοτ • GraphQLΛͨΊ͢ʹ • GraphQL Server
/ Clientͷ࣮ํ๏ • GraphQLཧղͷϙΠϯτ • ·ͱΊ
GraphQLͱ
http://graphql.org/
GraphQLͱ GraphQLΫϥΠΞϯτ͔Βαʔόʔͷ͍ ߹Θͤʹ༻͢ΔΫΤϦʔݴޠ(༷)
GraphQLͱ • ϓϩάϥϛϯάݴޠͰͳ͘ɺΫΤϦʔݴޠ • 2012ʹFacebookʹΑͬͯ࡞͞Εɺ2015·ͰFacebookࣾ Ͱ༻͞Ε͍ͯͨͷΛɺ2015ʹFacebook͕Ұൠެ։ͨ͠ • ݱࡏ༷ͷඪ४ԽΛࢦ͓ͯ͠ΓɺDraft RFC͕ެ։͞Ε͍ͯΔ •
https://facebook.github.io/graphql/ • GraphQL͕ఏڙ͢Δͷ • ౷ҰΠϯλʔϑΣʔεɺλΠϓγεςϜɺAPI༷औಘػೳ
GraphQLͷϝϦοτɾσϝϦοτ
GraphQLͷϝϦοτ • ΫϥΠΞϯτΞϓϦέʔγϣϯ͕ඞཁͱ͢ΔσʔλΛ1ճͷϦΫΤ ετͰऔಘͰ͖ΔΑ͏ʹͳΔ • APIͷΤϯυϙΠϯτ1͚ͭͩɺ1ͭͷΤϯυϙΠϯτͰ༷ʑͳϦΫ ΤετʹରԠͰ͖Δ • ΫϥΠΞϯτΞϓϦέʔγϣϯ͔ΒαʔόʔʹϦΫΤετΛ͛Δ ࡍʹɺ౷Ұ͞ΕͨΠϯλʔϑΣʔε͕ఏڙ͞Ε͍ͯΔͷͰɺΫϥΠ
Ξϯτ/αʔόʔͦΕͧΕͷ࣮ʹӨڹΛड͚ͣʹ։ൃΛਐΊΔ͜ͱ ͕Ͱ͖Δ • GraphQLͷ։ൃΛαϙʔτ͢ΔπʔϧͷԸܙΛड͚ΒΕΔ
GraphQLͷσϝϦοτ • αʔόʔαΠυͷ࣮͕େม • RFCʹैͬͯҰ͔ΒGraphQLϨΠϠʔͷαʔόʔϓϩάϥϜΛࣗ࡞͢Δͷ༰қͰͳ͍ • ϓϩδΣΫτͰ༻͢Δ߹ɺ͢Ͱʹز͔ͭαʔυύʔςΟͷ࣮͕͋ΔͷͰɺͦΕ Λ༻͢Δͷ͕Α͍ • 1ճͷϦΫΤετͰͷίʔυྔ૿Ճ͢Δ
• ΫϥΠΞϯτଆͰɺԿͷσʔλ͕ඞཁͳͷΛʮͯ͢ʯ໌ࣔ͢Δඞཁ͕͋Δ • จݙ͕গͳ͍ • ӳޠͷυΩϡϝϯτ͕΄΅ • ύϑΥʔϚϯε࠷దԽͷϕετϓϥΫςΟε͕ͳ͍ • ϦΫΤετͷܗ͕ຖճมΘΔՄೳੑ͕͋ΔͷͰΩϟογϡ͕(REST APIʹൺͯ)͍͠
GraphQLΛͨΊ͢ʹ
GraphQLΛͨΊ͢ʹ • GitHub GraphQL API • https://developer.github.com/v4/ • SWAPI GraphQL
• http://graphql.org/swapi-graphql/ • Idobata GraphQL API • https://idobata.io/ja/api
GraphQL Server / Client
GraphQL Server / Client http://graphql.org/code/
GraphQLཧղͷϙΠϯτ
GraphQLཧղͷϙΠϯτ • ͯ͢ͷϦΫΤετPOSTʹͳΔ • ʮΫΤϦʔ(Query)ʯͱʮϛϡʔςʔγϣϯ(Mutation)ʯͷ2छྨ͕͋Δ • CQRS( Command Query Responsibility
Segregation ίϚϯυΫΤϦ ʔ) • ΫΤϦʔ෭࡞༻Λى͜͞ͳ͍ͷ • ϛϡʔςʔγϣϯ෭࡞༻Λى͜͢ͷ • GraphQLͷϨεϙϯεεϐʔυΫΤϦʔͷதͰղܾ͕Ұ൪͍ͷʹ ҾͬுΒΕΔ
·ͱΊ
·ͱΊ • GraphQLΫϥΠΞϯτ͔Βαʔόʔͷ ͍߹Θͤʹ༻͢ΔΫΤϦʔݴޠ(༷) • ΫϥΠΞϯτΞϓϦέʔγϣϯ͕ඞཁͱ͢Δσʔ λΛ1ճͷϦΫΤετͰऔಘͰ͖ΔΑ͏ʹͳΔ • ΫϥΠΞϯτଆͷ࣮γϯϓϧʹͳΔ͕ɺαʔ όʔαΠυ࣮͕গ͠େม
ࢀߟจݙ • GraphQLެࣜαΠτ - http://graphql.org/ • GraphQL RFC (Working Draft)
- http:// facebook.github.io/graphql/ • Apollo - https://www.apollodata.com/ • GraphQL San Francisco (San Francisco, CA) | Meetup - https://www.meetup.com/ja-JP/GraphQL-SF/ • GitHub GraphQL API - https://developer.github.com/v4/
Thank you!