Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GraphQLでAPI開発 やってみよう!
Search
Azusa Okamoto
August 17, 2025
Programming
0
14
GraphQLでAPI開発 やってみよう!
2025/8/16に開催されたTECH WOMAN KANSAIの3周年イベントで、GraphQLのハンズオンを行った際の資料です!
ハンズオン講師を担当しました。
Azusa Okamoto
August 17, 2025
Tweet
Share
More Decks by Azusa Okamoto
See All by Azusa Okamoto
「わたし色」の見方で拓く世界
azunyan
0
20
ちゃんとSvelte, Hello Worldした!
azunyan
0
52
最近取り組んでいることについて喋ってみる
azunyan
0
13
フロントエンドエンジニアが関数型プログラミングに出会った話
azunyan
0
97
TECH WOMAN KANSAIの 取り組みと今後~2024年の振り返りと2025年へ~
azunyan
0
89
Go初心者が開発やってみた!
azunyan
1
550
デブサミウーマン2023 アウトプットって何が良いの?
azunyan
0
1.1k
個人的に楽しかった実装2022
azunyan
0
140
TestCaféでE2Eテスト!
azunyan
0
140
Other Decks in Programming
See All in Programming
dnx で実行できるコマンド、作ってみました
tomohisa
0
130
WebRTC、 綺麗に見るか滑らかに見るか
sublimer
1
140
S3 VectorsとStrands Agentsを利用したAgentic RAGシステムの構築
tosuri13
5
270
ID管理機能開発の裏側 高速にSaaS連携を実現したチームのAI活用編
atzzcokek
0
190
新卒エンジニアのプルリクエスト with AI駆動
fukunaga2025
0
150
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
140
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
6
1.2k
【CA.ai #3】ワークフローから見直すAIエージェント — 必要な場面と“選ばない”判断
satoaoaka
0
210
Microservices Platforms: When Team Topologies Meets Microservices Patterns
cer
PRO
1
920
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
1
210
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
shmokmt
5
2.1k
Querying Design System デザインシステムの意思決定を支える構造検索
ikumatadokoro
1
1.2k
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Statistics for Hackers
jakevdp
799
230k
Git: the NoSQL Database
bkeepers
PRO
432
66k
It's Worth the Effort
3n
187
29k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
4 Signs Your Business is Dying
shpigford
186
22k
KATA
mclloyd
PRO
32
15k
The Invisible Side of Design
smashingmag
302
51k
Building Applications with DynamoDB
mza
96
6.8k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Transcript
GraphQL でAPI 開発 やってみよう! あずにゃん TECH WOMAN KANSAI 3 周年〜GraphQL
ハンズオン勉強会〜
今日やること 1.GraphQL って何? 2. もうちょっと細かく... ! 3. やってみよう!~ハンズオンに挑戦!~
GraphQLって何?
GraphQLって何? API 開発のためのクエリ言語 クエリ=リクエスト( データ取得・更新など) REST API の代替とも言われている
GraphQLって何? 単一エンドポイント 独自の型システムを持っている Query とMutation( とSubscription) がある 欲しいデータだけを取得できる
RESTとの比較~REST API~ 複数のエンドポイント リソースごとに決められている HTTP メソッドを使う 決められた構造でデータを返す いらないデータが含まれることも
もうちょっと細かく... !
主な登場人物 Resolver Query やMutation の実装 スキーマ定義 どんなデータを返すのか?
主な登場人物~Resolver~ Query データ取得の処理で使う HTTP メソッドでいう、GET Mutation データ更新系の処理で使う HTTP メソッドでいう、POST 等のGET
以外
主な登場人物~スキーマ定義~ データの型を定義する SDL(Schema Definition Language) を用いて記 述
SDL(Schema Definition Language) スカラ型 プリミティブな値 オブジェクト型 Enum 型
SDL(Schema Definition Language) List 型 配列 型修飾子の1 つ Non-Null 型
null を許容しない、 「! 」を付ける 型修飾子の1 つ
SDL(Schema Definition Language) TypeScript で使う型とはちょっと違う 数値型 Typescript : number SDL
: Int 配列( 例えば文字列の配列) TypeScript : string[] SDL : [String]
スキーマの例
さっそくやってみよう! ~ハンズオンに挑戦!~
ハンズオンでやること! 1.Resolver の実装(API 実装) Mutation Query 2.API 実行(Query )
作業の準備! Repository をフォーク npm install して、必要なライブラリ等を導入 backend frontend
参考情報~使用技術(バックエンド)~ TypeScript( 言語) Express(FW) GraphQL Apollo Server Prisma Supabase(DB)
参考情報~使用技術(フロントエンド)~ TypeScript( 言語) React( ライブラリ・FW) GraphQL GraphQL Codegen Apollo Client
styled-components
まずはGraphQL見てみる! GraphQL サーバを立ち上げてみよう! backend のpackage.json のstart スクリプト
実装の手順 バックエンド実装 Resolver 実装(Mutation/Query) フロントエンド実装 Query つなぎこみ ※ 今回は、Mutation のつなぎこみは省略。
ご参加ありがとう ございました!