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
32
GraphQLの紹介 / graphql-introduction
howyi
July 05, 2019
Tweet
Share
More Decks by howyi
See All by howyi
Go+gRPCで作った次世代店舗の裏側
howyi
1
1.3k
GraphQLを活用するツールやライブラリ / graphql-libraries
howyi
0
51
サーバレスアーキテクチャでSlackBotを作る / serverless-slackbot
howyi
0
48
Amplifyの紹介/amplify-introduction
howyi
0
32
AWS認定を受けた話 / AWS CERTIFIED
howyi
0
58
自作PHPライブラリをリファクタリングした / Refactoring library
howyi
0
55
PhpStormの設定晒す / Customizing PhpStorm
howyi
0
57
ClickUpで始める進捗管理 / ClickUp
howyi
0
380
Other Decks in Programming
See All in Programming
Snowflakeで眠ったデータを起こそう!
estie
0
120
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
26
8.2k
スキーマ駆動開発による品質とスピードの両立 - 私達は何故、スキーマを書くのか
kentaroutakeda
0
170
GraphQLサーバの構成要素を整理する #ハッカー鮨 #tsukijigraphql / graphql server technology selection
izumin5210
4
820
Fragment Composition of GraphQL
quramy
4
770
HUIT新歓2024「競技プログラミング、やってみませんか?」
slephy2784
1
270
Compose-View Interop in Practice (mDevCamp 2024)
stewemetal
0
120
PHPの次期バージョンはこの時期どうなっているのか - Internalsの開発体制について - PHPカンファレンス小田原
youkidearitai
PRO
1
190
デフォルトにして至高、RubyMineの大好きな所
ruzia
0
300
Tailwind CSSを本気でカスタマイズする方法
fsubal
13
5.2k
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
130
2 週間で Twitter Bot を作ってみた
contour_gara
0
310
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
60
5k
Scaling GitHub
holman
457
140k
Unsuck your backbone
ammeep
663
57k
Designing for Performance
lara
601
67k
RailsConf 2023
tenderlove
4
540
Fantastic passwords and where to find them - at NoRuKo
philnash
37
2.5k
What's in a price? How to price your products and services
michaelherold
237
11k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
241
1.2M
StorybookのUI Testing Handbookを読んだ
zakiyama
13
4.6k
Stop Working from a Prison Cell
hatefulcrawdad
266
19k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
14
1.6k
Art, The Web, and Tiny UX
lynnandtonic
289
19k
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 ϓϩάϥϚͰ͋Ε͢ΜͳΓཧղͰ͖Δγϯϓϧ͞