コードを見る!書く!見てもらう!で爆速ステップアップ!!
by
Sho Nagata
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
コードを見る!書く!見てもらう! で爆速ステップアップ!! 2019.7.6 (Sat) Tama Ruby会議01 @s_naga03
Slide 2
Slide 2 text
コードレビューしてますか?
Slide 3
Slide 3 text
自分一人で出せる成長速度には限界がある
Slide 4
Slide 4 text
コードレビューは 自分が至っていないレベルへ “ジャンプ” できるチャンス
Slide 5
Slide 5 text
• 自分が持っていない知識、技術、経験を踏まえての指摘やアドバイス • 自分と他者との思考の共有
Slide 6
Slide 6 text
case1:ネストを作らない / 戻り値を明確に • 指摘 • 自分ならこんな風に書く → return nil unless review_id.present? • ネストができない • nilが返ることが明記できる
Slide 7
Slide 7 text
case1:ネストを作らない / 戻り値を明確に レビュー前 レビュー後
Slide 8
Slide 8 text
case1:ネストを作らない / 戻り値を明確に • 教訓 • ネストは悪。フラットこそが正義! • 早めの return で戻り値をわかりやすく!
Slide 9
Slide 9 text
case2:TPOに合わせよう • 指摘 • whereの引数が異なるだけなら2行書くのは冗長じゃない? • return もやや可読性を下げている気がする
Slide 10
Slide 10 text
case2:TPOに合わせよう レビュー前 レビュー後
Slide 11
Slide 11 text
case2:TPOに合わせよう • 教訓 • 良い悪いはケースバイケース • 大事なのは “読みやすいか” “メンテしやすいか”
Slide 12
Slide 12 text
case3:既存コードが最適解とは限らない • 指摘 • match マッチャ使おうぜ!
Slide 13
Slide 13 text
case3:既存コードが最適解とは限らない レビュー後 レビュー前
Slide 14
Slide 14 text
case3:既存コードが最適解とは限らない • 教訓 • 既存コードが最適解とは限らない • より良い書き方がないか常に追求せよ
Slide 15
Slide 15 text
RSpecといえば… ※ࣸਅຊਓͷྃঝΛಘͯ༻͍ͯ͠·͢
Slide 16
Slide 16 text
より “たくさん” の “効果的な” レビューのために
Slide 17
Slide 17 text
コードを見る! • 他の人はどんな書き方をしているのかな? • 会社 / システムのコーディング文化、作法 • 解答例の一つがそこにある
Slide 18
Slide 18 text
コードを書く! • 思いついたらまず書いてみる • とりあえず動くものをアウトプット • ブラッシュアップ
Slide 19
Slide 19 text
コードを見てもらう! • 恥を捨てる • 気になっている箇所はあらかじめコメントしておこう • 思考を言語化できるか
Slide 20
Slide 20 text
まとめ • 自分一人で出せる成長速度には限界がある • 周りの力を借りて爆速でステップアップしよう • 今回はレビューイの視点だったが、レビュアーもステップアップのチャンス
Slide 21
Slide 21 text
Who am I? • Sho Nagata • Backend Engineer@カカクコム • 食べログのマイクロサービス化を推進中 • Ruby / Rails(歴は10ヶ月) ˏs_naga03 Sho Nagata nagata03
Slide 22
Slide 22 text
Thank you!!