$30 off During Our Annual Pro Sale. View Details »

つらくないコードレビューの運用

 つらくないコードレビューの運用

コード改善 meetup #1 発表スライドです

Kazuhiro Serizawa

May 25, 2016
Tweet

More Decks by Kazuhiro Serizawa

Other Decks in Programming

Transcript

  1. ͭΒ͘ͳ͍
    ίʔυϨϏϡʔͷӡ༻
    ίʔυվળ meetup #1
    2016.5.26

    View Slide

  2. About me
    • Kazuhiro Serizawa
    • github: serihiro
    • work at
    • serverside engineer
    • like %i(ruby erlang elixir)

    View Slide

  3. ࠓ೔࿩͞ͳ͍͜ͱ
    • ίʔυϨϏϡʔͷ۩ମతͳํ๏࿦
    • ޮՌతͳίʔυϨϏϡʔͷ࢓ํ
    http://www.slideshare.net/rootmoon/7-37892729
    ͓͢͢Ίʂ

    View Slide

  4. ࠓ೔࿩͢͜ͱ
    ίʔυϨϏϡʔ
    ΈΜͳͰ΍Ε͹
    ͭΒ͘ͳ͍

    View Slide

  5. ίʔυϨϏϡʔ͋Δ͋Δ
    • ϨϏϡʔ͓͡͞Μ͕͍Δ
    ϨϏϡʔ͓ئ͍͠·͢ʂ
    ϨϏϡʔ͓ئ͍͠·͢ʂ
    ϨϏϡʔ͓ئ͍͠·͢ʂ ϨϏϡʔ͓ئ͍͠·͢ʂ
    ࠓ೔΋ϨϏϡʔͰ̍೔͕ऴΘ͓ͬͨʜ

    View Slide

  6. ίʔυϨϏϡʔ͋Δ͋Δ
    • ࢓༷ʹৄ͍͠ਓ͚͕ͩϨϏϡʔ͍ͯ͠Δ
    ϨϏϡʔ͓ئ͍͠·͢ʂ
    ͜͜෼͔Βͳ͍ΜͰ

    "͞ΜʹϨϏϡʔ͓ئ͍ͯ͠
    ࠓ೔΋ϨϏϡʔָ͕͍͓͠ʜ
    ͡Ό͋"͞Μ͓ئ͍͠·͢ʂ

    View Slide

  7. ίʔυϨϏϡʔ͋Δ͋Δ
    • ͰɺproductionͰόά͕ݟ͔ͭΔͱ
    "͞Μ͕ϨϏϡʔ

    ͯ͘͠Εͨͷʹʜ
    ͪΐ͏ͪΐʜͪΐ͏ͪΐʜ
    "͞Μʜ

    View Slide

  8. ʮϨϏϡʔ͓͡͞Μʯ໰୊
    • ʢ΄΅ʣಛఆͷਓ͚͕ͩϨϏϡʔ͍ͯ͠Δ
    • ʢ΄΅ʣಛఆͷਓ͚͕ͩϨϏϡʔ͢Δͱ
    • ಛఆͷਓͷෛ୲͕େ͖ͯͭ͘Β͍ࢥ͍Λ͢Δ
    • νʔϜ಺Ͱίʔυͷ஌ݟ͕ڞ༗͞Εͳ͍
    • νʔϜϝϯόʔͷϨϏϡʔྗ͕ҭͨͳ͍
    • ͍ͭ·Ͱ΋͋ΒΏΔ͜ͱ͕ଐਓతͰεέʔϧ͠ͳ͍૊৫ʹ…

    View Slide

  9. ͳͥʮϨϏϡʔ͓͡͞Μʯ͕

    ੜ·Εͯ͠·͏ͷ͔
    • ৭ʑཧ༝͸͋Δͱࢥ͍·͢
    • ௕͘ӡ༻ͯ͠ΔͷͰ৽ࢀϝϯόʔ͕͠Βͳ͍͜ͱ͕ଟ͍
    • ϝϯόʔͷ࣮ྗ͕ࠩେ͖͍
    • ͳΜͱͳ͘

    ̋̋͞Μ͕΍Βͳ͍ͱμϝͳؾ͕͢Δ or

    ࠷ॳʹ࡞ͬͨਓ͕ϨϏϡʔ͠ͳ͍ͱμϝͳؾ͕͢Δ or

    ͓ͬ͞Μ͕ϨϏϡʔ͠ͳ͍ͱμϝͳؾ͕͢Δ

    View Slide

  10. Ͱ΋͜Εͬͯ

    ͜͏͢Ε͹ղܾ͢ΔͷͰ͸ʁ
    • ௕͘ӡ༻ͯ͠ΔͷͰ৽ࢀϝϯόʔ͕͠Βͳ͍
    ͜ͱ͕ଟ͍
    • ϝϯόʔͷ࣮ྗ͕ࠩେ͖͍
    • ͳΜͱͳ͘
    →ֶ΂ʂ
    →஁͑Ζʂ
    →ཧ༝͕ͳ͍ͳΒࢭΊΑ͏ʂ

    View Slide

  11. ͜ΕΛղܾ͢ΔͨΊͷఏҊ
    νʔϜશһͰ

    ϨϏϡʔ͠Α͏

    View Slide

  12. ΋͠νʔϜશһͰϨϏϡʔ͢Δ
    Α͏ʹͳΔͱ
    • ୭΋͕ޓ͍ͷίʔυΛϨϏϡʔ͢Δ
    • ϓϩμΫτͷ੹೚͕ڞ༗͞ΕΔ
    • ίʔυͷ࢓༷Λ޿͘ڞ༗͢Δ
    • ݁Ռͱͯ͠ϨϏϡʔ͓͡͞Μ͕͍ͳ͘ͳΓɺ୭͔
    ͕ͭΒ͍ࢥ͍Λ͢Δ։ൃ͸ͳ͘ͳΔʂ

    …ͷ͔ʁ

    View Slide

  13. Α͋͘Δݱ࣮
    ࣗ෼ͷλεΫͰखҰഋͩ
    ͔ΒϨϏϡʔ͢Δͷେม ࢓ࣄͰͦΜͳʹ
    ษڧͨ͘͠ͳ͍
    ΍ͬͺΓԶ͕ϨϏϡʔ͠ͳ͍ͱෆ҆
    ͪΌΜͱϨϏϡʔ

    Ͱ͖Δࣗ৴͕ͳ͍

    View Slide

  14. Ͱ΋ϨϏϡʔ͸΍Βͳ͍ͱ

    Ͱ͖ΔΑ͏ʹͳΔͷ͸೉͍͠ʢܦݧ্ʣ
    • ͷͰ΍ͬͺΓνʔϜͰϨϏϡʔΛճͤΔΑ͏
    ʹͳͬͯཉ͍͠ͱݸਓతʹ͸ࢥ͏
    • ͳͷͰνʔϜͰϨϏϡʔΛճ͠΍͘͢͢Δͨ
    Ίʹ࣮ࡍʹࢲ͕΍͍ͬͯΔtipsΛ͍͔ͭ͘঺հ

    View Slide

  15. ϨϏϡʔͯ͠΄͍͠಺༰ͷઆ໌Λ
    ৄࡉʹॻ͘Α͏ʹ࢓૊ΈԽ͢Δ
    • PullRequestͷDescriptionΛςϯϓϨԽ

    View Slide

  16. ϨϏϡΞʔ͸hubotͰ

    ެฏʹׂΓৼΔ
    • hubot pluginʰhubot-reviewer-lottoʱΛ࢖͏
    https://github.com/sakatam/hubot-reviewer-lotto

    View Slide

  17. ϨϏϡΞʔΛؾݣ͏
    • ʮ͜Ε΋͔ͨ͠͠Β೉͍͔͠΋ͳʙʯ

    ͱࢥͬͨΒϨϏϡΞʔʹ੠Λ͔͚ͯΈΔ
    • ͓ޓ͍ʹෆ໌ͳ఺Λฉ͖΍͘͢͢Δ

    งғؾͮ͘Γ͕ॏཁ

    View Slide

  18. ʮϨϏϡʔ=ษڧͷ৔ʯͱͯ͠
    ೝࣝ͢Δ
    • ࢦఠ͢Δ͜ͱ͕ͳͯ͘΋࢓༷ͰΘ͔Βͳ͍ॴ͕͋ͬͨ
    Βੵۃతʹ࣭໰͢Δ
    • ࢦఠ͢Δ͜ͱ͕ͳͯ͘΋࣭໰͢Δ͚ͩͰ΋ϨϏϡΞʔɾ
    ϨϏϡʔΠ૒ํͷؾ͖ͮʹͭͳ͕Δࣄ͸ଟ͍
    • ʮԿ͔ࢦఠ͠ͳ͍ͱ͍͚ͳ͍ʯͱ͍͏ϓϨογϟʔ͕
    ͋ΔͱϨϏϡʔͨ͘͠ͳ͘ͳΔɻੵۃతʹΈΜͳͰ࣭
    ໰͋ͬͯͦ͠͏͍͏ϓϨογϟʔΛͳ͘͢͜ͱ͕ॏཁ

    View Slide

  19. ʮϨϏϡʔ=ษڧͷ৔ʯͱͯ͠
    ೝࣝ͢Δ
    • ซͤͯಡΈ͍ͨ
    http://qiita.com/kkoide1332/items/c6ee6f007617114c8f0b

    View Slide

  20. ·ͱΊ
    • ίʔυϨϏϡʔ͓͡͞Μ͸ੜ·Ε΍͍͢
    • ίʔυϨϏϡʔ͓͡͞Μ͕͍ΔνʔϜ͸͍Ζ
    ͍ΖͭΒ͍
    • ΈΜͳͰίʔυϨϏϡʔΛճ͢͜ͱͰɺͭΒ
    ͍ίʔυϨϏϡʔ͔ΒϝϯόʔʹϝϦοτ͕
    ͋ͬͯͭΒ͘ͳ͍ίʔυϨϏϡʔ΁

    View Slide