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の紹介 / graphql-introduction
Search
howyi
July 05, 2019
Programming
0
70
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
97
サーバレスアーキテクチャでSlackBotを作る / serverless-slackbot
howyi
0
73
Amplifyの紹介/amplify-introduction
howyi
0
85
AWS認定を受けた話 / AWS CERTIFIED
howyi
0
85
自作PHPライブラリをリファクタリングした / Refactoring library
howyi
0
110
PhpStormの設定晒す / Customizing PhpStorm
howyi
0
100
ClickUpで始める進捗管理 / ClickUp
howyi
0
500
Other Decks in Programming
See All in Programming
Eloquentを使ってどこまでコードの治安を保てるのか?を新人が考察してみた
itokoh0405
0
3.2k
競馬で学ぶ機械学習の基本と実践 / Machine Learning with Horse Racing
shoheimitani
14
13k
Atomics APIを知る / Understanding Atomics API
ssssota
1
200
Developing Specifications - Jakarta EE: a Real World Example
ivargrimstad
0
190
AIの弱点、やっぱりプログラミングは人間が(も)勉強しよう / YAPC AI and Programming
kishida
13
5.3k
知られているようで知られていない JavaScriptの仕様 4選
syumai
0
630
「文字列→日付」の落とし穴 〜Ruby Date.parseの意外な挙動〜
sg4k0
0
270
Level up your Gemini CLI - D&D Style!
palladius
1
110
「正規表現をつくる」をつくる / make "make regex"
makenowjust
1
760
歴史から学ぶ「Why PHP?」 PHPを書く理由を改めて理解する / Learning from History: “Why PHP?” Rediscovering the Reasons for Writing PHP
seike460
PRO
0
170
Flutterアプリ運用の現場で役立った監視Tips 5選
ostk0069
1
510
JEP 496 と JEP 497 から学ぶ耐量子計算機暗号入門 / Learning Post-Quantum Crypto Basics from JEP 496 & 497
mackey0225
2
460
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Designing Experiences People Love
moore
142
24k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Side Projects
sachag
455
43k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.1k
4 Signs Your Business is Dying
shpigford
186
22k
RailsConf 2023
tenderlove
30
1.3k
How GitHub (no longer) Works
holman
315
140k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
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 ϓϩάϥϚͰ͋Ε͢ΜͳΓཧղͰ͖Δγϯϓϧ͞