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

nodejs-commit

 nodejs-commit

半年がかりでNode.jsにコミットして得たもの

kohta ito

May 09, 2019
Tweet

More Decks by kohta ito

Other Decks in Programming

Transcript

  1. ൒೥͕͔ΓͰ/PEFKTʹ
    ίϛοτͯ͠ಘͨ΋ͷ
    !LPI

    View full-size slide

  2. ࣗݾ঺հ
    ৘ใγεςϜຊ෦/PEFKTݴޠαϙʔτνʔϜ
    ಺੡νϟοτγεςϜ΍ɺࣾ಺Ґஔ৘ใݕࡧͳͲࣾ಺γεςϜ୲౰

    ࣾ಺Ͱ/PEFKTͷαϙʔτνʔϜͱٕͯ͠ज़తͳαϙʔτ
    IUUQTLPIEFW

    View full-size slide

  3. ૹͬͨ13
    w DIJME@QSPDFTTDMPTFΠϕϯτ͕ൃՐ͠ͳ͍όά

    IUUQTHJUIVCDPNOPEFKTOPEFQVMM

    IUUQTHJUIVCDPNOPEFKTOPEFQVMM
    w DIJME@QSPDFTTNBY#V⒎FSͷσϑΥϧτ͕*OpOJUZʹͳͬ
    ͍ͯͨमਖ਼

    IUUQTHJUIVCDPNOPEFKTOPEFQVMM

    IUUQTHJUIVCDPNOPEFKTOPEFQVMM

    IUUQTHJUIVCDPNOPEFKTOPEFQVMM

    View full-size slide

  4. Ϛʔδ͞ΕΔ·Ͱ
    13

    DMPTFFWFOU


    %PD13
    NBY#VG


    -(5.$*

    ςετमਖ਼

    1JOH

    1JOH

    /PEFֶԂࡇ

    8JOEPXTͰ͚͜Δ

    -BOEFE

    -JC13

    -(5.


    σΟεΧογϣϯ

    QJOH


    QJOH


    5SBWJT$*͕
    յΕΔ


    /PEFWYͷ
    ϦϦʔεΛϒϩοΫ͢Δ


    -BOEFE


    ݄
    ݄ ݄ ݄ ݄ ݄ ݄ ݄

    View full-size slide

  5. આ໌͕೉ߤ͢ΔʢNBY#V⒎FSʣ
    w %PDͰ͸CZUF͕ͩɺ࣮ࡍʹ͸*OpOJUZͩͬͨ
    ӳޠ͕੿ͯ͘΋ɺ(JUͱίʔυ͸ਖ਼ٛʂ
    ؒҧ͔ͬͯͨΒਖ਼͍͠஋ʹ%PDมߋͨ͠Αʂ
    ͍΍ɺυΩϡϝϯτ͕ਖ਼͍͠
    Ͱ΋͜ͷݕূίʔυ͕௨Βͳ͍Αʁ
    ͔֬ʹ
    ͜Ε͸ίʔυΛυΩϡϝϯτʹ߹ΘͤΔ΂͖͡ΌͶʁ
    աڈʹٞ࿦͕͋Δ͸͔ͣΒIJTUPSZΈͯʂ
    ΍ͬͺΓͨͩͷόάͬΆ͍Αɻίʔυमਖ਼͢ΔͶ
    ͜Ε͸#SFBLJOH$IBOHF͔ͩΒϝδϟʔόʔδϣϯΞοϓͩ
    ઌʹ%PDΛϚʔδ͔ͯ͠ΒίʔυΛϚʔδ͠Α͏
    ௚͔ͨ͠Β୭͔"QQSPWFͯ͠ʙʙ

    View full-size slide

  6. #SFBLJOH$IBOHF NBY#V⒎FS

    w /PEFKTͰ͸ԼҐޓ׵੡Λഁյ͢Δमਖ਼͸

    શͯϝδϟʔόʔδϣϯΞοϓʹͳΔ
    w ϝδϟʔόʔδϣϯΞοϓΛ͢Δʹ͸54$ਓͷঝೝ͕
    ඞཁ
    ΍͸Γӳޠ͕੿ͯ͘΋ɺ(JUͱίʔυ͸ਖ਼ٛʂ
    Ϛʔδ͞ΕͨΒผͷ13Ͱ࠷େ஋͋͛ΔͶ
    *OpOJUZͩͱӨڹେ͖͘ͳ͍ʁ
    ࠷େ஋ͷٞ࿦͸ɺաڈʹͳ͞Ε͍ͯΔ͔Βͦͷमਖ਼͸࿩ʹͳΒͳ͍ʂ
    ͦ͏͸͍͏͚Ͳݩʑ*OpOJUZͩͬͨΜͩΑɻ
    ͜ͷ13ݟͯ
    ΄Μͱͩɻͦͷ஋͸ଥ౰ͬΆ͍

    View full-size slide

  7. 1JOH
    w 13தͳΜͲ΋ίϝϯτ్͕ઈ͑Δ͜ͱ͕͋ͬͨ
    w ౦ژ/PEFֶԂࡇͰίΞίϛολʔདྷ೔
    w $PSEBOE-FBSOͰ௚઀ϨϏϡʔΛґཔ
    w ͙͢ʹ$*ճͯ͠-(5.͘Εͨ
    w جຊతʹ͸ۭؾΛಡ·ͣʹ

    1JOHΛඈ͹͢͜ͱ͕େࣄ

    View full-size slide

  8. ඇಉظͷςετʹͭ·ͣ͘
    w ͲΜͳʹখ͍͞σʔλͰ΋EBUBΠϕϯτ͸

    ճҎ্ݺ͹ΕΔ
    w NVTU$BMM͸ʮ౓Ҏ্ݺ͹ΕΔʯςετͰ͸ͳ͘ʮ౓͚ͩݺ͹ΕΔʯςετ

    ʢୈҾ਺Ͱݺ͹ΕΔճ਺ΛࢦఆͰ͖Δ
    w ͲΜͳʹখ͍͞σʔλͰ΋ճݺ͹ΕΔ͜ͱΛ૝ఆ͢Δ
    ͜͜

    View full-size slide

  9. ඇಉظͷςετʹͭ·ͣ͘
    wDMPTFΠϕϯτ͕ݺ͹Εͳ͍
    w DMJFOUΛFOE͔ͯ͠ΒTFSWFSΛDMPTF͢Δͷ͸ઈର
    w .BDͰ௨͔ͬͨΒͱ͍ͬͯ༉அ͠ͳ͍
    ͜͜

    View full-size slide

  10. 8JOEPXTʹͭ·ͣ͘
    8JOEPXTͰ͜ͷίʔυ͕ʮ&/05461ʯΛు͍ͯࢮ͵

    View full-size slide

  11. 8JOEPXTʹͭ·ͣ͘
    ͜͜ʹؾͮ͘ͷʹ਺ϲ݄͔͔Γ·ͨ͠

    View full-size slide

  12. 8JOEPXTʹͭ·ͣ͘
    w ίϥϘϨʔλʔͰͳ͍ͱ$*Λࣗ෼Ͱճͤͳ͍

    ʢ௕ظԽ͢Δͱ͜Ε͕Ұ൪͖͍ͭʣ
    w 13ͷͨΊʹ8JOEPXT؀ڥΛࣗ෼Ͱߏஙͨ͠
    w ϚϧνϓϥοτϑΥʔϜʢMJCVWʣͷରԠ͸େม

    View full-size slide

  13. ·ͱΊ
    w ӳޠ͕Ͱ͖ͳͯ͘΋ɺ(JUͷཤྺͱίʔυ͸ਖ਼ٛʂ
    w ίϛολʔ͸ࣗ෼ͷҙݟ͔ΒϨϏϡʔͯ͘͠ΕΔ͚ͩɻௐ੔
    ͯ͘͠ΕΔΘ͚Ͱ͸ͳ͍ɻʢࣗ෼Ͱ΍Δ͔͠ͳ͍ʣ
    w ݴΘΕͨ͜ͱΛૉ௚ʹฉ͘ͱɺผͷਓʹͻͬ͘Γฦ͞ΕΔ
    ͜ͱ΋͋Δ
    w ࢮ͵΄Ͳ༏लͳΤϯδχΞͱٞ࿦Ͱ͖Δͷ͸044ͳΒͰ͸
    ͷָ͕͋͠͞Δ
    w ࣗ෼͕ਖ਼͍͠ͱࢥ͏ߟ͑Λද໌͢Δ͜ͱ͕Ұ൪େࣄʂ

    ΍͸Γ(JUͱίʔυ͸ਖ਼ٛ

    View full-size slide

  14. 8JOEPXTʹͭ·ͣ͘
    w <࢓༷>8JOEPXTͰ͸ɺωοτϫʔΫͷϋϯυϧΛϓϩη
    εʹΞλονͰ͖ͳ͍
    w QPSUࢦఆͯ͠౉ͦ͏ͱ͢ΔͱMJCVWϨΠϠʔ·Ͱಥ͖ൈ͚
    ͯϓϩηε͕ࢮ͵
    w ͷͰɺOFUDSFBUF4FSWFS͢Δ࣌͸MJTUFOΛ
    DPNNPO1*1&ʹࢦఆ͢Δඞཁ͕͋Δ

    View full-size slide