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
Full Stackな型安全を支えるGraphQLのFragment活用
Search
Anji.T
August 28, 2025
Programming
140
1
Share
Full Stackな型安全を支えるGraphQLのFragment活用
Anji.T
August 28, 2025
Other Decks in Programming
See All in Programming
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
2
380
安いハードウェアでVulkan
fadis
1
950
ふりがな Deep Dive try! Swift Tokyo 2026
watura
0
180
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
240
10年分の技術的負債、完済へ ― Claude Code主導のAI駆動開発でスポーツブルを丸ごとリプレイスした話
takuya_houshima
0
2.3k
UIの境界線をデザインする | React Tokyo #15 メイントーク
sasagar
1
170
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
4
850
Offline should be the norm: building local-first apps with CRDTs & Kotlin Multiplatform
renaudmathieu
0
190
PHPで TLSのプロトコルを実装してみるをもう一度しゃべりたい
higaki_program
0
190
Swift Concurrency Type System
inamiy
0
430
車輪の再発明をしよう!PHP で実装して学ぶ、Web サーバーの仕組みと HTTP の正体
h1r0
3
520
今年もTECHSCOREブログを書き続けます!
hiraoku101
0
240
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
Deep Space Network (abreviated)
tonyrice
0
110
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.2k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
250
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
220
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
790
Agile that works and the tools we love
rasmusluckow
331
21k
Rails Girls Zürich Keynote
gr2m
96
14k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
310
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
27
3.4k
The SEO identity crisis: Don't let AI make you average
varn
0
440
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.5k
Transcript
Full Stackな型安全を支える GraphQLのFragment活用 田中 杏直 / Tanaka Anji 2025/08/28 TsKaigi
Mashup
氏名:田中 杏直 / Tanaka Anji @anji0114 自己紹介 所属:匠技研工業 / プロダクトエンジニア
None
None
• GraphQLでの開発の流れ • データ取得の課題と Fragment • Full Stackな型安全を支える Fragment 今日お話しすること
GraphQLでの開発の流れ
スキーマの定義
バックエンド実装
GraphQL Codegen
生成されたファイル
データ取得の設計課題と Fragment
どこでデータを取得する?問題
他の設計パターン Repository + Hooks • どこでuseUserを呼ぶか? • 親で呼ぶ?子で呼ぶ?複数の場所で呼んだら 重複する? •
コンポーネント追加のたびに、親の取得内容を 都度調整
他の設計パターン Container/Presentational • どのレベルでContainerを作るか? • ページ単位?セクション単位?コンポーネント単 位?
Fragment Colocationを使用することで
子は親の取得位置を気にせず開発することできる
Full Stackな型安全を支える Fragment
None
バックエンド側で schemaを変更した時
型エラーをコンポーネントレベルで出すことができる
コンポーネントが増えた場合でも
該当コンポーネントだけを変えれば良い
まとめ • 従来の「どこでクエリを呼ぶか?」「親子で重複してない?」という判断コスト が減る。 • 各コンポーネントが必要なデータを Fragmentで宣言するため、 親の設計 や他コンポーネントの実装を知る必要がない。 •
バックエンド側で Schemaを変更時、コンポーネントレベルでコンパイルエ ラーを出してくれる。
匠技研工業ではエンジニアを募集しています!!
ありがとうございました!