Slide 1

Slide 1 text

ΩϟϦΞͷ೰Έʹ͍ͭͯ 2022/12/09 @ Developers CAREER Boost

Slide 2

Slide 2 text

Twitter: @yosuke_furukawa Github: yosuke-furukawa ࠷ۙͷ׆ಈ $ISPNF"EWJTPSZ#PBSE +4$POG+1PSHBOJ[FSFUD

Slide 3

Slide 3 text

͜ͷ࿩͸ʮΩϟϦΞͷ೰Έʯ ͱݴΘΕͯ೰ΜͰ͍Δਓ޲͚ Ͱ͢ɻ೰ΜͰ͍ͳ͍ਓ͸ͦͷ ··Ͱɻ

Slide 4

Slide 4 text

ݞॻ • Ұൠࣾஂ๏ਓ Japan Node.js Association ୅දཧࣄ • ΤΩεύʔτ૊৫ άϧʔϓϚωʔδϟ • σϕϩοϓϝϯτࣨ ࣨ௕ • Google Chrome Advisory Board • ٕज़ސ໰ ਺ࣾ

Slide 5

Slide 5 text

ΩϟϦΞͷ೰ΈͳΜ͔ͳͦ͞͏ • ͦΜͳ;͏ʹࢥͬͯ͠·ͬͨํ •ʮ๻΋ΩϟϦΞʹ೰ΜͰ· ͢ʂʂʂʂʂʂʯ • ΩϟϦΞͷ೰Έ͕ͳ͘ͳΔ͜ͱͳΜͯແ͍ • ࠓ೔͸ͦΜͳ࿩Λ͠·͢

Slide 6

Slide 6 text

ݞॻͱΩϟϦΞͷ೰Έ • ݞॻͱΩϟϦΞͷ೰Έ͸ແؔ܎ • ݞॻ͸୯ͳΔ࢓ࣄ্ͷϥϕϧʹա͗ͳ͍ • ݞॻ͕ද͍ͯ͠Δͷ͸ݱࡏؔΘ͍ͬͯΔ࢓ࣄ ͷ໾ׂͷ໊લͰ͋Δ

Slide 7

Slide 7 text

ݞॻͱΩϟϦΞͷ೰Έ • ΩϟϦΞ͸࢓ࣄͷܦྺΛࢦ͢ • ΋͏গࣗ͠෼ͷݴ༿Ͱݴ͍௚͢ͱɺʮνϟϨ ϯδ͖ͯͨ͜͠ͱʯΛࢦ͢ • ʮࠓޙͷΩϟϦΞʯͱݴΘΕͨͱ͖ʹ͸ʮࠓ ޙͷνϟϨϯδʯͱಉٛޠͩͱࢥ͍ͬͯΔ

Slide 8

Slide 8 text

ݞॻͱΩϟϦΞͷ೰Έ • ʮΩϟϦΞͷ೰Έʯ͸ཁ͸ʮ͜ͷ··Ͱ͍͍ͷ͔ͳʯ ͱ͍͏೰Έ • ͦΜͳͷ͸ͣʔͬͱӬଓతͳ೰ΈͰ͋Δ • ࣍΁ͷ௅ઓΛܾΊͨҰ࣌తͳঢ়ଶ͸೰ΜͰ͍ͳ͍ͱࢥ ͏͕ɺͦͷޙ͸·ͨ೰Ή • ௅ઓ͍ͯ͠ΔਓΛݟΔͱযΔͷ͸Ұ࣌తʹ೰Έ͕ͳ͘ ͳͬͯͦ͏Ͱɺ޾ͤͦ͏ʹݟ͑Δ͔Β

Slide 9

Slide 9 text

ΩϟϦΞͷ೰Έ

Slide 10

Slide 10 text

ΩϟϦΞͷ೰Έ ৽͍͠νϟϨϯδͱͦΕ͕͏·͘ ݴͬͯΔ࠷ॳͷ͏ͪ͸೰ΜͰͳ͍

Slide 11

Slide 11 text

ΩϟϦΞͷ೰Έ ఀ଺࢝͠ΊΔͱ೰Έͩ͢

Slide 12

Slide 12 text

ΩϟϦΞͷ೰Έ མͪࠐΈ࢝ΊΔͱ΍͹͍ͬͯͳΔ

Slide 13

Slide 13 text

ΩϟϦΞͷ೰Έ ͦΕͷ܁Γฦ͠

Slide 14

Slide 14 text

ݞॻͱΩϟϦΞͷ೰Έ • ͏·͘ߦ͍ͬͯΔঢ়ଶ͕ଓ͚͹͍͍͕ͦΜͳ ͷ͸Ұఆ࣌ؒͰ͙͢ʹফ͑ͯ͠·͏ • ͔͠΋ͦΜͳ؆୯ʹ͏·͘ߦ͔ͳ͍ • େମ৽͍͠νϟϨϯδ͸ࣦഊ΋͢Δ • ࣦഊͨ͠Γɺࢼߦࡨޡ͍ͯ͠Δ಺͸೰Ή

Slide 15

Slide 15 text

ݞॻͱΩϟϦΞͷ೰Έ • ೰ΜͰ͍ͳ͍࣌ͳΜͯҰॠ͔͠ͳ͍ • جຊతʹ͸ͣͬͱ೰ΜͰΔ • ΈΜͳ͕௅ઓ͍ͨ͠ɺ͏·͍͖͍ͨͬͯ͘ ࢥͬͯΔ

Slide 16

Slide 16 text

ΩϟϦΞͷ೰Έ͸͓ͦΒ͘த ௕ظతʹݟΔͱͣͬͱ͍ͭͯ ·ΘΔ

Slide 17

Slide 17 text

ΩϟϦΞͷ೰ΈΛղফ͠Α͏ ͱ͠ͳ͍

Slide 18

Slide 18 text

ΩϟϦΞͷ೰ΈΛղফ͠Α͏ͱ ͠ͳ͍ • ଟ෼ͣͬͱ೰ΉΜͩ͠ɺ͏·͘ંΓ߹͍Λͭ ͚ͳ͕Β೰΋͏ͱࢥͬͯཉ͍͠ • ׬ᘳʹ͏·͍ͬͯ͘ΔਓͳΜ͍ͯͳ͍ • Ұํɺ͔ͩΒͦ͜ʮ͜͜ͰͩͬͨΒ೰ΜͰ΋ ͍͍΍ʯͱࢥ͑Δ؀ڥΛݟ͚ͭͯཉ͍͠

Slide 19

Slide 19 text

͜͜ͰͩͬͨΒ೰ΜͰ΋͍͍΍ • ೰Έ͸ਚ͖ͳ͍ͷͰɺ೰ΜͰ͍Δ৔ॴ͕ద੾͔Ͳ͏͔ Ͱߟ͑ͯཉ͍͠ • ձࣾͷ vision ʹڞײ͍ͯ͠Δͱ͔ • ձࣾͷҰॹʹಇ͍͍ͯΔϝϯόʔΛϦεϖΫτͯ͠ ͍Δͱ͔ • ͦͷձࣾͷதͰ·ͩνϟϨϯδ͍ͨ͠ࣄ͕͋Δͱ͔

Slide 20

Slide 20 text

͜͜ͰͩͬͨΒ೰ΜͰ΋͍͍΍ • ద੾͡Όͳ͍ͳͱࢥͬͨΒม͑Δͷ΋͋Γͩͱ ࢥ͏ɻ • ΋͏΍Γ͍ͨ͜ͱ͕ͳ͍ • vision ʹڞײͰ͖ͳ͍ • ΩϟϦΞҎ֎ͷਓؒؔ܎౳Ͱ೰Έଓ͚ͯ͠· ͏

Slide 21

Slide 21 text

ݹ઒ͷ࿩

Slide 22

Slide 22 text

࠷ॳͷձࣾ • ϝʔΧʔͰจॻ؅ཧγεςϜΛ࡞͍ͬͯͨ • RDBͷΠϯσοΫεͷ࢓૊ΈΛֶΜͩΓɺશจݕ ࡧͷ࢓૊ΈֶΜͩΓͱ΋ͷֶ͘͢͝ͼ͕ଟ͔ͬͨ • ӳޠ΍ͬͨΓɺϓϩάϥϛϯάͨ͠Γ͠ͳ͕Βࣗ ݾݚᮎ͢Δ࣌ؒ΋͋ͬͯྑ͍اۀͩͱײ͍ͯͨ͡ • ͦΕͰ΋ɺ౰વΩϟϦΞʹ͸೰ΜͰ͍ͨ

Slide 23

Slide 23 text

ͦΜͳ࣌ʹ Node.js ʹग़ձ͏

Slide 24

Slide 24 text

౜ಥͳ౧ଠ࿠ • ͓͹͋͞Μ͸઒΁ચ୕ʹ޲͔͍·ͨ͠ • ઒ͷ্ྲྀ͔Β౧͕ͲΜͿΒ͜ͱྲྀΕ͖ͯͨ • ࣋ͬͯؼ͓͍ͬͯ͡͞Μͱ৯΂Α͏ͱࢥͬͨ ʢ͜͜Α͘ߟ͑Δͱҟৗߦಈʣ

Slide 25

Slide 25 text

͓ͦΒͦ͘Μͳग़ձ͍͕৭Μ ͳॴͰى͖͍ͯΔ

Slide 26

Slide 26 text

๻ͷ৔߹ͷେ͖ͳ౧͕ 
 Node.js ͩͬͨɻ

Slide 27

Slide 27 text

Node.js ʹϋϚΔ • ͱΓ͋͑ͣຖिϒϩάॻ͘ • ຖ݄ͳʹ͔࡞Δ • Πϕϯτʹ͸͔ͳΒͣߦ͘ • ೥ʹҰ౓͸ొஃ͢Δ

Slide 28

Slide 28 text

͜ͷ௅ઓΛ͍ͯ͠Δ࣌͸ָ͠ ͔ͬͨɻ

Slide 29

Slide 29 text

͜͏͍͏ͷʢWeb ΞϓϦέʔ γϣϯͮ͘ΓʣΛ࢓ࣄʹͨ͠ ͍ͱࢥͬͨ

Slide 30

Slide 30 text

2ͭΊͷձࣾ • ήʔϜձࣾ • ༏लͳਓ͕΋ͷ͘͢͝ଟ͔ͬͨ • ӡ༻ͷ࢓ํ΋ֶΜͩ • ৽نࣄۀ΋ܦݧͨ͠ • طଘࣄۀͷϦχϡʔΞϧͰେ͖ͳ࢓ࣄ΋΍ͬͨ • ΋ͪΖΜΩϟϦΞʹ͸೰ΜͰ͍ͨ

Slide 31

Slide 31 text

Node.js ͷ׆ಈ͸ଓ͚͍ͯͨ

Slide 32

Slide 32 text

ͨͩຊ֨తʹίϛϡχςΟͷ ϦʔμʔʹͳΔ ͜ͷลΓ͔Β Node.js Ϣʔ βʔάϧʔϓ୅දʹͳΔ

Slide 33

Slide 33 text

Node.js ͱ io.js ͱͷ fork ͳ Ͳ͕ى͖ɺίϛϡχςΟ΋ࠞ ಱͱͩ͢͠ɻ

Slide 34

Slide 34 text

ݟݶΔਓ΋ଟ͍ Կ౓ʮNode.js Φϫίϯʯ Έ͍ͨͳࣄΛݴΘΕ͔ͨ

Slide 35

Slide 35 text

Node.jsͱio.jsͷࠞಱΛऩΊ Α͏ͱɺϒϩάॻ͍ͨΓͲͪ Βʹ΋ίϯτϦϏϡʔτͨ͠ Γ͍ͯͨ͠

Slide 36

Slide 36 text

͜ͷ࣌ͷ׆ಈΛࢦͯ͠ ͳΜͰ͜͏͍͏ࣄ͕Ͱ͖ͨΜ Ͱ͔͢ʁͱฉ͍͖ͯͯ͘ΕΔ ਓ΋ଟ͍

Slide 37

Slide 37 text

ҰݴͰ͍͏ͱʮѪʯ͔ͳͱ ࢥ͍ͬͯΔɻ

Slide 38

Slide 38 text

ϩδοΫΛ௒͑ͯ΍Γଓ͚Δ ঢ়ଶΛࢦͯ͠ʮѪʯͱݺΜͰ ͍Δɻ

Slide 39

Slide 39 text

ͱʹ͔͘ଛಘൈ͖Ͱߟ͑ͯ ͨɻ Node.js Λ੝Γ্͛ͨ ͔ͬͨɻͳΜͰ͔ͱݴΘΕͯ ΋Α͘Θ͔Βͳ͍ɻͦ͏͠ͳ ͖Ό͍͚ͳ͍ͱࢥͬͯͨɻ

Slide 40

Slide 40 text

͜͜·ͰເதʹͳΕΔ΋ͷ͕ ͋ͬͨͷ͸ྑ͔ͬͨؾ͕ͯ͠ ͍Δ

Slide 41

Slide 41 text

ͨͩ΍ͬͺΓ΋ͬͱ Node.js Λຊ֨తͳ׆ಈʹ͠ ͨ͘ͳͬͨ

Slide 42

Slide 42 text

ݱࡏͷձࣾ • Node.js Λ͔ͳΓૣ͔͘Β࠾༻͍ͯͨ͠ • ΢ΣϒΞϓϦέʔγϣϯ΋ଟ͘ɺଟ༷ͳ໰୊͕ ଟ͔ͬͨ • ࣗ෼͕ؔΘΔ͜ͱͰগ͠Ͱ΋ྑ͘͠Α͏ͱࢥͬͯ ͍Δɻ • ΋ͪΖΜΩϟϦΞʹ͸೰ΜͰ͍Δ

Slide 43

Slide 43 text

ϑϩϯτΤϯυͷઐ೚νʔϜ Λ೚͞ΕΔ

Slide 44

Slide 44 text

ࢠձࣾͷ։ൃશൠΛ೚͞ΕΔ

Slide 45

Slide 45 text

৭ʑͱ৽͍͠νϟϨϯδ Λͤͯ͞΋Β͍͑ͯΔ

Slide 46

Slide 46 text

ͦΕͰ΋΍ͬͺΓ೰Ή

Slide 47

Slide 47 text

όϥϯεͷͱΓํ ઐ໳Ոͷҭ੒ ձࣾͷܦӦ Node.js ͳͲͷOSS׆ಈ ٕज़ސ໰ ຊΛॻ͘

Slide 48

Slide 48 text

όϥϯεͷͱΓํ ຖ೔ͷݚᮎ (ӳޠ) ڝٕϓϩάϥϛϯά ےτϨ Ոఉ΋๩͍͠

Slide 49

Slide 49 text

·͊Ͱ΋೰ΜͰͯ΋͍͍΍ͱ ࢥ͑Δ

Slide 50

Slide 50 text

ଟ෼ɺ͜Ε͕ࣗ෼ͷΩϟϦΞ ͷܗ੒ͷ࢓ํԿͩͱࢥ͏ɻ ೰Έͳ͕Βɺͦͷ࣌ϋϚͬͯ ΔࣄΛ΍Γͳ͕Βɺόϥϯε ͱΓͳ͕Βɺͨ·ʹແ஡͠ͳ ͕Βɺ΍Γ͍ͨ͜ͱΛશ෦ ΍ͬͯΈΔɺͱ͍͏ɻ

Slide 51

Slide 51 text

શһ͕͜͜·Ͱແ஡Λ͠Ζͱ ͸ࢥΘͳ͍ɻਓʹΑͬͯΩϟ ϦΞͷܗ੒ͷ࢓ํ͸ҧ͍ͬͯ ͍ɻͨͩ೰Έ͸ड͚ೖΕͯཉ ͍͠ɻ

Slide 52

Slide 52 text

ͦ͏ͦ͏ɺେࣄͳ͜ͱ

Slide 53

Slide 53 text

೰Ήͷ͸ྑ͍͕ɺϝϯλϧΠ ϧωεʹͳΒͳ͍Α͏ʹͯ͠ ཉ͍͠

Slide 54

Slide 54 text

೰Έ݈͗ͯ͢߁ʹඃ֐͕ग़Δ ͷ͸ҧ͏

Slide 55

Slide 55 text

΍͹͍ʂͱࢥͬͨΒ ͙͢පӃʹɻ

Slide 56

Slide 56 text

පӃʹߦ͘લʹճΓʹ૬ஊ͠ ͨΓ͢Δͷ΋͋ΓͰ͠ΐ͏

Slide 57

Slide 57 text

ҿΈձͱ͔Ͱ೰ΈΛݴͬͯΈ Δͷ΋ྑ͍ͱࢥ͍·͢ɻ

Slide 58

Slide 58 text

݈߁Ͱ͋ͬͯ΄͍͠ɻ ೰Έա͗ͨΒपғΛཔͬͯ΄͍͠ɻ ๻͸໌ޙ೔40ࡀʹͳΓ·͢ɻ ݈߁ʹؾΛ͚͍ͭͯ·͢ɻ

Slide 59

Slide 59 text

དྷ೥΋೰Έଟ͖೥ʹͳΔͰ ͠ΐ͏ɻͰ΋Ұॹʹ৐Γӽ͑ ͍͖ͯ·͠ΐ͏ɻ

Slide 60

Slide 60 text

͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ