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
新潟WEBアプリケーション勉強会 Vol.1 LT GraphQL Federation
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
ゆきか
July 21, 2022
Programming
150
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
新潟WEBアプリケーション勉強会 Vol.1 LT GraphQL Federation
ゆきか
July 21, 2022
More Decks by ゆきか
See All by ゆきか
新潟の鮨のはなし 飯テロver
yukikayuki
0
320
GitHub Actionsと GitHub CLIと permissions
yukikayuki
0
210
React Hooks勉強会 vol.5
yukikayuki
2
380
Other Decks in Programming
See All in Programming
LLMは4年分のCompose移行を再現できるのか?実プロダクト279件のXMLで探る自動化の境界線
makun
0
380
Claude Codeを組織的に動かして月400PRを実現した話
happy_ryo
0
250
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
210
Foundry Localでエージェント開発
seosoft
0
120
ALB ログから Trace を気合で繋げる技術
fohte
7
860
数年滞っていたダークモード対応をおよそ2週間で完了させる
chigichan24
0
670
Pythonの実行はどこまで賢くなったのか? CPythonとPyPyから見る最適化のしくみ
curekoshimizu
4
2.8k
コンパウンドプロダクト開発のためのローカルプロセスマネージャー再発明 #layerxgo
izumin5210
0
620
ハーネス設計入門 〜プロンプト、コンテキストの次〜
kinopeee
53
35k
AI駆動開発にグラフDBを重ねてみた
satoshi256kbyte
2
730
AIと壁打ちしながら進めるコスト管理
fufuhu
2
1.9k
XHTMLが残したもの
yosuke_furukawa
PRO
1
380
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
500
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
370
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
520
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
Code Reviewing Like a Champion
maltzj
528
40k
We Are The Robots
honzajavorek
0
330
Designing for Timeless Needs
cassininazir
1
470
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
720
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
KATA
mclloyd
PRO
35
15k
Transcript
!@ZVLJLBZVLJ (SBQI2-'FEFSBUJPO ৽ׁ8&#ΞϓϦέʔγϣϯษڧձ7PM-5
ࣗݾհ w 5BLBZVLJ,BOFEB!@ZVLJLBZVLJ w גࣜձࣾ4QSPDLFU w ϑϩϯτΤϯυΤϯδχΞ w ࠷ۙ(PΛॻ͍͍ͯΔ
࣍ w (SBQI2-ͱ w ϚΠΫϩαʔϏεߏͰͷόοΫΤϯυ w (SBQI2-'FEFSBUJPO
(SBQI2-ͱ w ʹ'BDFCPPL ݱ.FUB ʹΑͬͯެ։͞Εͨ"1*͚ΫΤϦݴޠɺϥϯ λΠϜ w ճͷϦΫΤετͰඞཁͳϦιʔεΛऔಘ͢Δ͜ͱ͕Ͱ͖Δ w εΩʔϚϑΝʔετͰ։ൃՄೳ
4DIFNB 2VFSZ 3FTQPOTF query { posts { id title }
} { "data": { "posts": [ { "id": 1, "title": "title-1" }, { "id": 2, "title": "title-2" } ] } } 1045IUUQTFYBNQMFDPNHSBQIRM type Post { id: Int title: String content: String } type Query { post(id: Int): Post posts: [Post] } 4DIFNB 2VFSZ 3FTQPOTF
ϚΠΫϩαʔϏεߏͷόοΫΤϯυ w ϑϩϯτΤϯυͰ֤όοΫΤϯυΛୟ͘ w ϑϩϯτΤϯυͰ֤όοΫΤϯυΛೝ࣮ࣝͯ͠Λߦ͏ඞཁ͕͋Δ w ϑϩϯτΤϯυʹόοΫΤϯυ༻ͷಉ࣮͕͡૿͑Δ FHೝূͳͲ w
#''ΛڬΉ w όοΫΤϯυΛ࣮ͨ͠Β#''ʹରԠͨ͠ίʔυ͕ඞཁ
ΫϥΠΞϯτ͕֤όοΫΤϯυΛୟ͘ߏ #SPXTFS 6TFSTFSWJDF 1PTUTFSWJDF
#''ߏ #SPXTFS #'' 6TFSTFSWJDF 1PTUTFSWJDF
(SBQI2-'FEFSBUJPO "QPMMP'FEFSBUJPO w "QPMMP͕։ൃ͍ͯ͠Δɺෳͷ(SBQI2-"1*ΛΈ߹Θͤͨεʔύʔάϥϑ Λ࡞͢ΔͨΊͷɺڧྗͰΦʔϓϯͳΞʔΩςΫνϟ w ϚΠΫϩαʔϏεͷ(SBQI2-ͷTDIFNBΛΈ߹ΘͤͨεʔύʔάϥϑΛ࡞ ͢Δ͜ͱͰɺͭͷ(BUFXBZͷΤϯυϙΠϯτ͔Βશͯͷ(SBQI2-ͷϦι ʔεΞΫηεͰ͖Δ w
ࠓॳՆʹWʹͳͬͨ
(SBQI2-'FEFSBUJPOߏ #SPXTFS 4VQFSHSBQI HBUFXBZ 6TFSTVCHSBQI 1PTUTVCHSBQI
4VQFSHSBQI4DIFNBͷ࡞ type User @key(fields: "id") { id: Int! name: String!
} type Query { user(id: Int): User users: [User] } type Post { id: Int title: String content: String user: User } type User @key(fields: "id") { id: Int! } type Query { post(id: Int): Post posts: [Post] } type Post @join__type(graph: USERS) { id: Int title: String content: String user: User } type Query @join__type(graph: POSTS) @join__type(graph: USERS) { user(id: Int): User @join__field(graph: POSTS) users: [User] @join__field(graph: POSTS) post(id: Int): Post @join__field(graph: USERS) posts: [Post] @join__field(graph: USERS) } type User @join__type(graph: POSTS, key: "id") @join__type(graph: USERS, key: "id") { id: Int! name: String! @join__field(graph: POSTS) } 4VQFSHSBQI4DIFNB 6TFS4DIFNB 1PTU4DIFNB 3PWFS$-*
2VFSZ 3FTQPOTF query { posts { title user { name
} } } { "data": { "posts": [ { "title": "title-1", "user": { "name": "taro" } }, { "title": "title-2", "user": { "name": "jiro" } } ] } } 1045IUUQTFYBNQMFDPNHSBQIRM 2VFSZ 3FTQPOTF
(SBQI2-'FEFSBUJPOͷϝϦοτ w ෳ(SBQI2-αʔϏε͕͋ͬͯճͷϦΫΤετͰϦιʔεΛऔಘͰ͖Δ w 3&45ʹର͢ΔڧྗͳརΛγϯϓϧͳܗͰҡ࣋Ͱ͖Δ w (SBQI2-αʔϏεͷ࣮ʹूதͰ͖Δ w ΫϥΠΞϯτɾ#''Λҙࣝ͠ͳͯ͘ྑ͍ w
ෳνʔϜ͕νʔϜݸผͷόοΫΤϯυ։ൃʹϑΥʔΧεͰ͖Δ
ಋೖ࣌ͷϙΠϯτ ͩͱߟ͍͑ͯΔͱ͜Ζ w TVQFSHSBQIHBUFXBZ͕ࢀর͢ΔTDIFNBࣗମͷཧ w ৗʹTVQFSHSBQITDIFNBΛߏՄೳ͔Λݕࠪ͠ଓ͚Δඞཁ͕͋Δ w ΑΓεΩʔϚϑΝʔετͳ։ൃͷྲྀΕʹ w TVCHSBQIσϓϩΠޙʹTVQFSHSBQIHBUFXBZ͕ࢀর͢ΔTDIFNBͷߋ৽
w HBUFXBZ(SBQI2-ΫΤϦΛཧղ͢Δݡ͍ࢠͳͷͰɺσϓϩΠʹΑͬͯ TVCHSBQIͰར༻Մೳͳঢ়ଶʹͳͬͯɺHBUFXBZ͕ࢀর͢ΔTDIFNB͕ TVCHSBQIͰར༻Մೳʹͳ߲ͬͨΛө͍ͯ͠ͳ͍߹ɺΫϥΠΞϯτ͔Β ༻Ͱ͖ͳ͍
8FBSFIJSJOH 4FBSDIGPS<4QSPDLFU'PSLXFMM>POHPPHMF