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

リクルートテクノロジーズの技術動向

 リクルートテクノロジーズの技術動向

Java/Go のOB,OG会で発表した リクルートテクノロジーズの技術動向の話です。

Yosuke Furukawa

June 30, 2018
Tweet

More Decks by Yosuke Furukawa

Other Decks in Programming

Transcript

  1. ҎԼͷ৚݅Λຬͨ͢ a objectΛ ࡞ͬͯΈΔ var a = { // ?

    } if ( (a >= 1 && a <= 2) && (a >= 3 && a <= 4) && (a >= 5 && a <= 6) ) { console.log('pass') }
  2. ճ౴ var a = { i: 1, valueOf() { return

    this.i++ } } if ( (a >= 1 && a <= 2) && (a >= 3 && a <= 4) && (a >= 5 && a <= 6) ) { console.log('pass') }
  3. ϦΫϧʔτςΫϊϩδʔζͷඪ ४తͳߏ੒ • Backend For Frontends #SPXTFS #'' .JDSP4FSWJDF .JDSP4FSWJDF

    .JDSP4FSWJDF ͜ͷαʔό͸)5.-Λ࡞ͬ ͨΓɺ"1*Λ·ͱΊͨΓɺηο γϣϯ؅ཧͨ͠Γ͢Δ
  4. ϦΫϧʔτςΫϊϩδʔζͷඪ ४తͳߏ੒ • Backend For Frontends #SPXTFS #'' .JDSP4FSWJDF .JDSP4FSWJDF

    .JDSP4FSWJDF ͬͪ͜͸"1*αʔόɺ%#ͱ ઀ଓͨ͠ΓɺpMFॻ͖ग़ͨ͠ Γɺ֎෦"1*ͱܨ͍ͩΓɻ
  5. ϦΫϧʔτςΫϊϩδʔζͷඪ ४తͳߏ੒ • Backend For Frontends #SPXTFS #'' .JDSP4FSWJDF .JDSP4FSWJDF

    .JDSP4FSWJDF ͬͪ͜͸/PEFKTͰॻ͍ͯΔ ͬͪ͜͸+BWBPS(PͰॻ͍ ͯΔɻ
  6. ϦΫϧʔτςΫϊϩδʔζ • ϑϩϯτΤϯυ͸Node.jsͰॻ͘ • Express, webpack, babel, etc etc •

    όοΫΤϯυ͸Go or JavaͰॻ͘ʢঃʑʹGo Λ૿΍ͯ͠Δ࠷தʣ • echo, DI container, Πϯϑϥܥπʔϧ etc etc
  7. Node.js v10.5.0 released • Worker (Thread)͕ೖͬͨ • Node.js ͸͜Ε·Ͱsingle thread͕ͩͬͨɺ

    Multi Threadϓϩάϥϛϯά΋ग़དྷΔΑ͏ʹ • ࠷ۙ͸Node.js΋CPUϔϏʔͳॲཧ͕૿͖͑ͯ ͨ
  8. History of concurrent Node.js /PEFKT .BTUFS1SPDFTT $IJME 1SPDFTT $IJME 1SPDFTT

    $IJME 1SPDFTT $IJME 1SPDFTT .BTUFS1SPDFTT DBOGPSLDIJMEQSPDFTT W
  9. History of concurrent Node.js /PEFKT .BTUFS1SPDFTT 8PSLFS 8PSLFS 8PSLFS 8PSLFS

    8PSLFS 8PSLFS Ϛελʔϓϩηε͔Β8PSLFS5ISFBEΛىಈ͢ΔɺεϨου ͳͷͰϓϩηεΑΓ͸ىಈ͸ܰྔɻ
  10. Result pMF OVNCFST CBCFMDPSF VTJOHTJOHMFUISFBE CBCFMDPSF VTJOHDIJMEQSPDFTT CBCFMDPSF VTJOHXPSLFS 

    NT NT NT  NT NT NT  NT NT NT  NT NT NT  NT NT NT
  11. Node.js Worker Λ࢖ͬͯ৽͠ ͍ϥΠϒϥϦΛ࡞͍ͬͯ͘ • SSRͷߴ଎Խ • babel, webpackͷߴ଎Խ etc

    • ϦΫϧʔτςΫϊϩδʔζͰ͸৽͍ٕ͠ज़Λݚ ڀ՝୊ͱͯ͠৽͍͠औΓ૊ΈΛ͍ͯ͘͠ɻ