Upgrade to Pro — share decks privately, control downloads, hide ads and more …

チームをCQRS

boiyama
March 30, 2018

 チームをCQRS

We Are JavaScripters! @17th
https://wajs.connpass.com/event/81022/
の発表資料です。

boiyama

March 30, 2018
Tweet

More Decks by boiyama

Other Decks in Programming

Transcript

  1. ν ʔϜ Λ C Q R S 2 0 1

    8 . 3 . 3 0 We A re J a v a S c r i p t e r s # 1 7
  2. P ro f i l e • ϑϩϯτΤϯυΤϯδχΞ at PERSOL

    • GitHub: boiyaa
 Twitter: boiyaaaaaa
  3. Event State Event State ը໘ ΫϥΠΞϯτ αʔόʔ όοΫΤϯυ ΤϯδχΞ ϑϩϯτΤϯυ

    ΤϯδχΞ ຊདྷͷը໘Λ࡞ΔɾσʔλΛ࡞Δ৬຿ʹूத
  4. αʔόʔαΠυാͷਓ޲͚
 ๲େͳϑϩϯτΤϯυΤίγεϜͷΩϟονΞοϓͷखؒΛ͔͚ͣʹࡁΉ΋ͷ • Nuxt.js: 
 VueϕʔεͰɺ΍ΕΔࣄͷଟ͞ͱԱ͑Δࣄͷগͳ͞ͷόϥϯε͕͍͍ • Next.js: 
 Reactϕʔεʹͯ͠͸͔ͳΓԱ͑Δࣄ͸গͳ͘Ͱ͖͍ͯΔ

    • Redux: 
 αʔόʔαΠυͰCQRS΍͍ͬͯΔਓʹ͸ೃછΈ΍͍͢ͱࢥ͏͠ɺӬଓԽ͍ͨ͠σʔλΛ ѻ͏ϑϨʔϜϫʔΫͱͯ͠ • AMP: 
 ΍ΕΔࣄগͳ͍͚ͲԱ͑Δࣄ͕Ұ൪গͳ͍ɻSPAͰ͸ͳ͍ͷͰαʔόʔαΠυతʹςϯϓ ϨʔτΤϯδϯʹॻ͚͹͍͍ͷͰϋʔυϧ௿͍
  5. ϑϩϯτΤϯυാͷਓ޲͚
 αʔόʔαΠυͷՄ༻ੑ΍ύϑΥʔϚϯεΛࣗྗͰ୲อ͢Δͷ͸೉͍͠ͷͰɺӡ༻ϋʔυϧͷ௿͍΋ͷ • Cloud Firestore: 
 σʔλΛΫϥΠΞϯταʔόʔؒͰಉظ͢Δεέʔϥϒϧͳ NoSQLσʔλϕʔεɻ
 ͦͦ͜͜ͷΫΤϦػೳʢ!=ͱ͔orͱ͔ͳ͍ʣɻ·ͩϕʔλ •

    Cloud Functions for Firebase: 
 Firestore ͷߋ৽ΛτϦΨʔʹ Node.js ͷؔ਺Λ࣮ߦͰ͖ΔͷͰɺෳࡶͳϩδοΫΛॻ͘৔ॴʹ࢖͑Δɻ • Firebase Hosting: 
 ͱͯ΋؆୯ʹ੩తϑΝΠϧΛFastlyͷڧྗͳCDNͰ഑৴Ͱ͖ΔɻυϝΠϯ΍ূ໌ॻ΋ஶ͘͠؆୯ɻ
 Cloud FunctionsͷϓϩΩγ΋Ͱ͖ͯɺαʔόʔαΠυϨϯμϦϯάͨ͠ը໘΋഑৴Ͱ͖Δɻ • AWS AppSync: 
 GraphQLͰDynamoDBʢεέʔϥϒϧͳ NoSQLσʔλϕʔεʣ΍Elasticsearch ServiceʢϑϧϚωʔδυͳݕ ࡧΤϯδϯʣ͔ΒσʔλऔಘͰ͖ΔαʔϏεͳͷͰɺΫΤϦͱ૬ੑ͕ྑͦ͞͏ɻ
 Lambda Ͱ Node.js ͷؔ਺Λ࣮ߦͰ͖ΔͷͰɺෳࡶͳϩδοΫ΋ॻ͚Δɻ·ͩύϒϦοΫϓϨϏϡʔ