Slide 1

Slide 1 text

GraphQLͷܕΛ෼཭ͤͯ͞ νʔϜ͝ͱͷฒྻ։ൃΛ Ճ଎ͤͨ͞࿩ [email protected] Ҫ্ प/INOUE Amane (@isaka1022)

Slide 2

Slide 2 text

Amane Inoue @isaka1022 גࣜձࣾϚΠϕετ΁21ଔೖࣾ ݱࡏ͸favlistͷ୲౰όοΫΤϯυΤϯδχΞ झຯ͸ཱྀ/Իָ(DJ)/ϥϯ/ےτϨ Ruby on Rails/Go/React.js/GraphQL

Slide 3

Slide 3 text

·ͣ͸ϚΠϕετʹ͍ͭͯ

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

ϚΠϕετͷϓϩμΫτͷߏ੒ ؅ཧը໘ WEB Mobile App favlist

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

ϚΠϕετͷٕज़ελοΫͷมભ αʔϏεϦϦʔε౰ॳ 2023೥ݱࡏ ΑΓΑ͍UXͷఏڙɾάϩʔόϧԽͷରԠʹΑΓNext.jsΛಋೖ

Slide 11

Slide 11 text

ৄ͘͠͸ͪ͜Β https://speakerdeck.com/isaka1022/maibesutogurobaruhua-nosubete

Slide 12

Slide 12 text

GraphQLʹ͍ͭͯ

Slide 13

Slide 13 text

ʲ࠶ܝʳϚΠϕετͷٕज़ελοΫͷมભ αʔϏεϦϦʔε౰ॳ 2023೥ݱࡏ ΑΓΑ͍UXͷఏڙɾάϩʔόϧԽͷରԠʹΑΓNext.jsΛಋೖ

Slide 14

Slide 14 text

ϑϩϯτΤϯυΛ෼཭ʂ ͯ͞ɺAPI͸Ͳ͏͠Α͏ʁ🤔

Slide 15

Slide 15 text

RESTfulͳAPIͷ໰୊఺ ϚΠϕετͰͷաڈʹ࢖ΘΕ͍ͯͨRESTFul APIͷϨεϙϯε

Slide 16

Slide 16 text

RESTfulͳAPIͷ໰୊఺ ଟ͘ͷϢʔεέʔεʹ౴͑Α͏ͱ͢Δ͋·Γ൚༻త͗͢ΔAPIʹͳΓ͕ͪ ʮOne-Size-Fits-All APIʯ໰୊

Slide 17

Slide 17 text

RESTfulͳAPIͷ໰୊఺ ϝϯςφϯεͷ໰୊ υΩϡϝϯτ΍ن໿࡞੒ɾ࢓༷ڞ༗ͷίετ ʢOpen APIΛ࢖͏ͱ͍͏ख΋͋Γʣ

Slide 18

Slide 18 text

ϚΠϕετͰGraphQLಋೖͨ͠ཧ༝ • graphql-rubyͱ͍͏Railsͷgem͕࢖͑Δ • ن໿ɾॻ͖ํ͕౷ҰͰ͖Δ • ࢓༷ॻͷӡ༻ָ͕ʹͰ͖ΔʢεΩʔϚͦͷ΋ͷ͕υΩϡϝϯτʣ • ΫΤϦ͕ΫϥΠΞϯτଆͰॊೈʹௐ੔Ͱ͖Δ • αʔόʔαΠυ͕ϑϩϯτΤϯυͷ࣮૷Λؾʹ͠ͳͯ͘ྑ͍

Slide 19

Slide 19 text

ৄ͘͠͸ͪ͜Β https://zenn.dev/mybest_dev/articles/a8f3096821851c

Slide 20

Slide 20 text

ʢ͓͞Β͍ʣGraphQLͷεΩʔϚͱܕ GraphQLͰ͸࢓༷ΛεΩʔϚͰఆٛ͠ɺܕͱͱ΋ʹදݱ https://graphql.org/learn/

Slide 21

Slide 21 text

ϚΠϕετʹ͓͚ΔσΟϨΫτϦߏ੒ʢ౰࣌ʣ

Slide 22

Slide 22 text

ϚΠϕετʹ͓͚ΔσΟϨΫτϦߏ੒ʢ౰࣌ʣ Schema͸෼཭ɾܕ͸ڞ༗

Slide 23

Slide 23 text

ϚΠϕετʹ͓͚ΔσΟϨΫτϦߏ੒ʢ౰࣌ʣ ϞσϧʢDBςʔϒϧ͸ڞ༗ʣɺίʔυ͸෼཭ Rails Τϯδϯͱ͍͏࢓૊ΈΛ࢖༻ͯ͠ϞδϡʔϧԽ

Slide 24

Slide 24 text

ӡ༻ͯ͠ग़͖ͯͨ՝୊ ಉҰͳϞσϧʹରͯ͠ͷܕʹରͯ͠ ฤू༻ͱදࣔ༻ͷϑΟʔϧυ͕ࠞࡏ͢Δ

Slide 25

Slide 25 text

ӡ༻ͯ͠ग़͖ͯͨ՝୊ ͲͬͪͷϑΟʔϧυΛ࢖͑͹͍͍ΜͩʁΫϥΠΞϯτଆ͕Θ͔Βͳ͍

Slide 26

Slide 26 text

ӡ༻ͯ͠ग़͖ͯͨ՝୊ ؅ཧը໘ͷมߋ͕දଆͷෆ۩߹ͷݪҼʹͳͬͯ͠·͏

Slide 27

Slide 27 text

ܕ΋Θ͚Δ͜ͱʹͨ͠ʂ

Slide 28

Slide 28 text

࣮ࡍͷ࡞ۀखॱ

Slide 29

Slide 29 text

Before/After ؅ཧը໘ͰͷΈ࢖ΘΕΔܕΛEngines഑Լʹ෼཭ͨ͠

Slide 30

Slide 30 text

·ͣ͸ϑΟʔϧυΛ͢΂ͯίϐʔ

Slide 31

Slide 31 text

ͦΕͧΕͰෆཁͳ΋ͷΛ࡟আ

Slide 32

Slide 32 text

࣮ࡍͷPull Request มߋྔ͕͍͢͝😂

Slide 33

Slide 33 text

࣮ࡍͷPull Request Github͕ॏ͘ͳΓ·ͨ͠

Slide 34

Slide 34 text

΍ͬͯΈͯͲ͏͔ʢ൒೥ܦաʣ • දࣔͷࡍʹ࢖͏ϑΟʔϧυ͕໌֬ʹͳͬͨʂ • ೝ஌ෛՙ͕ݮͬͨ • ؅ཧը໘ɾදଆͰ • ͦΕͧΕͷܕΛ҆৺ͯ͠มߋͰ͖Δ ։ൃޮ཰Ξοϓʂ

Slide 35

Slide 35 text

Future Work • ·ͩશͯͷϑΟʔϧυΛ׬શʹ෼཭Ͱ͖͍ͯͳ͍ • ޻਺͕͔͔Δ • Өڹൣғ͕ଟ͍ͷͰQAɺಈ࡞֬ೝ͕େม • ܕϑΝΠϧʹ໊લۭ͕ؒ͋ΔͷɺͲ͏͢Δʁ

Slide 36

Slide 36 text

·ͱΊ

Slide 37

Slide 37 text

No content

Slide 38

Slide 38 text

ͥͻ৘ใަ׵͠·͠ΐ͏😊

Slide 39

Slide 39 text

GraphQLΞυϕϯτΧϨϯμʔ΋΍Γ·͢ʂ https://qiita.com/advent-calendar/2023/graphql

Slide 40

Slide 40 text

ͥͻ৘ใަ׵͠·͠ΐ͏😊