Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GraphQLの紹介 / graphql-introduction
Search
howyi
July 05, 2019
Programming
0
71
GraphQLの紹介 / graphql-introduction
howyi
July 05, 2019
Tweet
Share
More Decks by howyi
See All by howyi
Go+gRPCで作った次世代店舗の裏側
howyi
1
1.6k
GraphQLを活用するツールやライブラリ / graphql-libraries
howyi
0
98
サーバレスアーキテクチャでSlackBotを作る / serverless-slackbot
howyi
0
74
Amplifyの紹介/amplify-introduction
howyi
0
87
AWS認定を受けた話 / AWS CERTIFIED
howyi
0
85
自作PHPライブラリをリファクタリングした / Refactoring library
howyi
0
110
PhpStormの設定晒す / Customizing PhpStorm
howyi
0
110
ClickUpで始める進捗管理 / ClickUp
howyi
0
500
Other Decks in Programming
See All in Programming
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
150
ローターアクトEクラブ アメリカンナイト:川端 柚菜 氏(Japan O.K. ローターアクトEクラブ 会長):2720 Japan O.K. ロータリーEクラブ2025年12月1日卓話
2720japanoke
0
730
Findy AI+の開発、運用におけるMCP活用事例
starfish719
0
350
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
160
AWS CDKの推しポイントN選
akihisaikeda
1
240
tparseでgo testの出力を見やすくする
utgwkk
2
220
TestingOsaka6_Ozono
o3
0
150
30分でDoctrineの仕組みと使い方を完全にマスターする / phpconkagawa 2025 Doctrine
ttskch
4
870
FluorTracer / RayTracingCamp11
kugimasa
0
230
【CA.ai #3】ワークフローから見直すAIエージェント — 必要な場面と“選ばない”判断
satoaoaka
0
240
チームをチームにするEM
hitode909
0
330
Rediscover the Console - SymfonyCon Amsterdam 2025
chalasr
2
160
Featured
See All Featured
The Language of Interfaces
destraynor
162
25k
Code Review Best Practice
trishagee
74
19k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Being A Developer After 40
akosma
91
590k
Building Applications with DynamoDB
mza
96
6.8k
For a Future-Friendly Web
brad_frost
180
10k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
Designing for humans not robots
tammielis
254
26k
Practical Orchestrator
shlominoach
190
11k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Making Projects Easy
brettharned
120
6.5k
Transcript
ʰ(SBQI2-ʱͷհ
ͳΜͰ͔͢͜Ε (SBQI2-ެࣜϖʔδͷ(PPHMFຊޠ༁
ͳΜͰ͔͢͜Ε w "1*༻ΫΤϦݴޠ w ಛఆͷ%#ϓϩάϥϛϯάݴޠʹ݁ͼ͚ΒΕ͍ͯΔͷͰͳ͍ w ӡӦ'BDFCPPLˠ(SBQI2-'PVOEBUJPOͱͯ͠ಠཱ
"1*ఆٛͷॻ͖ํ
ΈࠐΈͷܕදه w *OU w 'MPBU w 4USJOH w #PPMFBO w
*% w ྻ<>Ͱғͬͯදهˠ<4USJOH> w σϑΥϧτදهશͯOVMMBCMFѻ͍ w OPOOVMMBCMF5ZQFͷޙʹΛ͚Δˠ4USJOH
5ZQF w ΫϥεతͳཱͪҐஔ w ෦ͷ'JFMEͱݺͿ w ܧঝͳ͍ type User {
id: ID name: String }
4DIFNB w 2VFSZ .VUBUJPOͷܕΛࢦఆ͢Δ schema { query: Query mutation: Mutation
}
2VFSZ w σʔλΛऔಘ͢Δػೳ 2VFSZͱͯ͠ఆٛ͢Δɻ type Query { hero(episode: Episode): Character
droid(id: ID!): Droid } w &QJTPEFΛ͢ͱ$IBSBDUFS͕ฦͬͯ͘Δ w *%Λ͢ͱ%SPJE͕ฦͬͯ͘Δ
.VUBUJPO w σʔλΛมԽͤ͞Δػೳ .VUBUJPOͱͯ͠ఆٛ͢ Δɻ type Mutation { deleteHero(id: ID!):
Result! createDroid(droid: Droid!): ID! } w *%Λ͢ͱ3FTVMU͕ฦͬͯ͘Δ w %SPJEΛ͢ͱ*%͕ฦͬͯ͘Δ
4VCTDSJQUJPO w ϦΞϧλΠϜ௨৴ͳͲΛߦ͍͍ͨ߹4VCTSJQUJPOͱͯ͠ఆٛ͢Δɻ w Πϕϯτ͕ൃੜͨ͠ͱ͖ʹߋ৽Λड͚औΔ w 8FCTPLFUΛ༻࣮ͯ͠͞ΕͯΔ͜ͱ͕ଟ͍ʢؾ͕͢Δʣ type Subscription {
commentAdded(repoFullName: String!): Comment }
%JSFDUJWF w !ϚʔΫΛ͚ͭΔ͜ͱͰΧελϜଐੑΛઃఆՄೳ w ެࣜͰ!EFQSFDBUFEσΟϨΫςΟϒͳͲͷ༷͕͋Δ type User @model { id:
ID! name: String! phone: Phone! @hasOne }
%JSFDUJWF w ྫ w 5ZQFʹ!NPEFMΛ͚ͭΔͱ%#ఆٛͱͯ͠ೝࣝ͞Εɺςʔϒϧ͕࡞͞ΕΔ w 'JFMEʹ!IBT0OFΛ͚ΔͱࣗಈͰϦϨʔγϣϯ͕࣮͞ΕΔ type User @model
{ id: ID! name: String! phone: Phone! @hasOne }
*OUFSGBDF w Α͋͘ΔΠϯλϑΣʔε
6OJPO w ʮෳͷܕͷ͏͍ͪͣΕ͔ͷܕʯͱ͍͏ܕΛఆٛ͢Δ
&OVN w &OVN
%FTDSJQUJPO w ίϝϯτ
ϦΫΤετྫ type Query { human(id: ID!): Human } type Human
{ name: String appearsIn: [Episode] starships: [Starship] } enum Episode { NEWHOPE EMPIRE JEDI } type Starship { name: String } 4DIFNB
ϦΫΤετྫ { human(id: 1002) { name appearsIn starships { name
} } } MPDBMIPTUHSBQIRM 1045 #0%: \ EBUB\ IVNBO\ OBNF)BO4PMP BQQFBST*O< /&8)01& &.1*3& +&%* > TUBSTIJQT< \ OBNF.JMMFOJVN'BMDPO ^ \ OBNF*NQFSJBMTIVUUMF ^ > ^ ^ ^ 3&410/4&
ϝϦοτ
୯ҰΤϯυϙΠϯτ w ϦΫΤετ͢ΔΞυϨε͕ݻఆ w MPDBMIPTUHSBQIRM w )551ϝιουͯ͢1045
ඞཁͳσʔλͷΈΛऔಘ͢Δ w ϦΫΤετʹ߲୯ҐͰͷऔಘํ๏Λఆٛ͢Δ w ➡௨৴ྔݮɺϨεϙϯεͷߴԽ
ίʔυͱͷ࿈ܞ͢͠͞ w 5ZQFˠΫϥεɺϦιʔεͱඥ͚͍ͮ͢ w &OVNˠ֤ϓϩάϥϛϯάݴޠɺ%#ͷ&OVNͱඥ͚͍ͮ͢ w ֤ݴޠͷϥΠϒϥϦͰɺ5ZQF͔Β%#ͷςʔϒϧఆٛΫϥεͷࣗಈੜ Λ࣮ݱ͍ͯ͠Δ͜ͱ͕ଟ͍
ֶशίετ͕͍ w ϓϩάϥϚͰ͋Ε͢ΜͳΓཧղͰ͖Δγϯϓϧ͞