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

Node学園祭2017.pdf

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for kohta ito kohta ito
November 25, 2017
2.3k

 Node学園祭2017.pdf

Avatar for kohta ito

kohta ito

November 25, 2017
Tweet

Transcript

  1. $PQZSJHIU©  :BIPP+BQBO$PSQPSBUJPO"MM3JHIUT3FTFSWFE ࣗݾ঺հ  ҏ౻ ߁ଠ ,PIUB *UP 5XJUUFS(JU)VC

     !LPI • /PEFKTݴޠαϙʔτ • ϓϥοτϑΥʔϜ։ൃຊ෦ • ΤϯδχΞΤόϯδΣϦετ
  2. $PQZSJHIU©  :BIPP+BQBO$PSQPSBUJPO"MM3JHIUT3FTFSWFE ࣾ಺Ґஔ৘ใγεςϜʮQP[[Zʯ  • ਓͷҐஔݕࡧ • ϐϯͨͯڞ༗ •

    ϑϩΞͷࠞࡶ౓ • ࠲੮ϩοΧʔ؅ཧ https://techblog.yahoo.co.jp/advent-calendar-2016/pozzy/
  3. $PQZSJHIU©  :BIPP+BQBO$PSQPSBUJPO"MM3JHIUT3FTFSWFE QP[[Zͷٕज़  • /HJOY • "OHVMBS+4ʢ༁͋ͬͯܥʣ •

    /PEFKTʢW • 3FEJT • .Z42-1PTUHSF42- • $JTDPͷ8J'JҐஔ৘ใऔಘػث 4人で約半年の開発(3人はJS初心者)
  4. $PQZSJHIU©  :BIPP+BQBO$PSQPSBUJPO"MM3JHIUT3FTFSWFE &4-PWF  exports.get = async (req, res)

    => { const { permission } = checkRole(req) if (!permission) { throw new AuthError('permission error') } const { id, name } = req.query const where = db.getQuery(id, name) const { office } = await db.getOffice(where) return { status: 200, office } } 本当はまだ大部分がgenerator + co (開発時はv4 https://techblog.yahoo.co.jp/javascript/nodejs/Node-es6/ 設計 ・フロー制御はasync/await ・Node.js v8に上げても動いた!
  5. $PQZSJHIU©  :BIPP+BQBO$PSQPSBUJPO"MM3JHIUT3FTFSWFE /PEFKT &4ͰΑ͔ͬͨ͜ͱ  • DBMMCBDL஍ࠈʹϋϚΒͳ͔ͬͨ • 並列処理はawait

    Promise.all • UIJTͷ๾໓ʢUIJTͰϋϚΒͳ͔ͬͨʣ • WBSͷ๾໓ʢείʔϓͰϋϚΒͳ͔ͬͨʣ • ϥϯλΠϜͷόʔδϣϯΞοϓ͕௒ָͩͬͨ +4ॳ৺ऀ͕ϋϚΔՕॴ͕গͳ͘ͳͬͨʂ
  6. $PQZSJHIU©  :BIPP+BQBO$PSQPSBUJPO"MM3JHIUT3FTFSWFE /PEFKT &4Ͱਏ͔ͬͨ͜ͱ  • Τϥʔॲཧ • スタックトレースが出ないパターンがある

    const m = require('./mymodule') const main = async () => { await m.func() } main().catch((e) => { console.log(e) }) exports.func = () => { return new Promise((resovle, reject) => { setTimeout(() => { reject(new Error('hoge error')) }) }) } callback内でスタックが確定してしまう (別コンテクストのため呼び出し元のモ ジュールがでてこない)
  7. $PQZSJHIU©  :BIPP+BQBO$PSQPSBUJPO"MM3JHIUT3FTFSWFE Ϡϑʔͷ/PEFKT  • 044σϕϩούʔೝఆ੍౓ • OSSへのコミットが業務にできる •

    活動予算100万円/年 • ΫϦΤΠλʔ׆ಈࢧԉ੍౓ • 技術力アップに月1万円まで支給 • Node学園祭にもいける • FUD https://about.yahoo.co.jp/pr/release/2017/10/02a/
  8. $PQZSJHIU©  :BIPP+BQBO$PSQPSBUJPO"MM3JHIUT3FTFSWFE ݴޠαϙʔτνʔϜͷ࢓ࣄ  • /PEFKTͷόʔδϣϯΞοϓࠂ஌ • ࣾ಺ϓϥοτϑΥʔϜͱͷ࿈ܞ •

    /PEFKTηϛφʔ • /PEFKTϋϯζΦϯ • /PEF$PSF"1*ษڧձ IUUQTMJOPUJDFUVNCMSDPNQPTU