· 3分で読了
コードレビュー方法
この記事は中国語から自動翻訳されたものです。翻訳によりニュアンスが失われている場合があります。
前言
フロントエンドエンジニアとして、通常チーム内で最も頻繁にプルリクエストを送信する人になります。自分のPRがよりテストしやすく、レビュアーがレビューしやすくなるように、いくつかの注意事項をまとめました。
プルリクエストの説明
- このプルリクエストの目的。例えば:レイアウトの修正、新機能の追加、特定の画面のスタイルなど
- 各企業のメンバーがプルリクエストを見れることを忘れず、プルリクエストの説明が十分な情報を提供していることを確認してください。
- どのようなフィードバックを求めているのかを明確に述べる。
- プルリクエストの状態を示すためにプレフィックスを使用する。
- このコードを確認する必要があるメンバーを追加する(GitHubのアサイン機能を使用できます)
フィードバックを提供する
- プルリクエスト内の書き方に同意しない場合は、一度立ち止まり、なぜ同意しないのか考えてみてください。考えがまとまったらコメントを残す。
- 命令の代わりに質問を使う。「なぜこの書き方を採用しないのですか?」は「そう書かないで!」よりも優れています。相手の考えや意見を尋ねてみることで、彼らがそのように書かなかった理由があるかもしれません。この場合、適切なコミュニケーションを図ることができます。
- なぜこれらのコードを修正する必要があると考えるのかを説明する(スタイルガイドに合っていない?会社の命名規則に従っていない?テストケースが書かれていない?)
- 現在のコードを改善するためのより良い方法を提供する。
- 攻撃的なコメントをできるだけ避ける。(例:そんな書き方は馬鹿げている。)
- 謙虚さを保つ。
- 断定的な表現を避ける。(そんな風にコードを書かないで!)
- オンラインでのコミュニケーションでは、誤解が生じることが避けられません。この場合、対面でのコミュニケーションを考慮することができます。
- あなたの意見を強調するために、絵文字を使う。例えば:good job 👋 👍。 修正が必要ですよ👻(これはちょっと皮肉っぽいですか?)
フィードバックに返答する
- コードレビューを手伝ってくれる人に感謝する。
- 不明な点があれば、質問することが大切です。
- このフィードバックが実装されたり、特定のコミットに含まれている場合は、そのリンクを提供する。
- 議論がますます複雑になり、結論が得られない場合は、対面でのコミュニケーションを試みる。
みんなのこと
- 皆が異なるコーディングスタイルを持っていることを理解する必要があります。また、プログラミングには多くの解決策や選択肢があるため、議論の際は適切にバランスを取り、なぜそれが良いと思うのかを十分に説明するべきです。
- 質問する形で進め、命令形は避ける。
- 責任を区分しない(これはあなたの書いたものだから私には関係ない、これはあなたが処理する部分です)
- 著者の視点や考えを理解しようとする。
結論
以上の点をまとめましたが、最も重要なのは相手のことを考えることです。どのようなプルリクエストを見たいか、この視点から考えることで、より深く感じることができるかもしれません。 結局のところ、もしミスを犯したり、自分の不注意でコードを本番環境にデプロイしてしまった場合、チーム全体の時間を無駄にしてバグを再度見つけ、再デプロイする必要があるのですから。
関連記事
- 測定が目標になったとき:窓税から Pull Request 数まで 僕はかつて、小さなツールを書いて自分が四半期にどれだけ PR を出し、どれだけ review を残し、どれだけ ticket を解決したかを集計し、数字で上司に成果を示そうとした。上司はただ、評価は成果だけで決まるわけではないと言った。数年後になって僕はようやく理解した——測定が目標になった瞬間、それはもはや良い測定ではなくなるのだと。イギリスの窓税からハノイのネズミ懸賞金、そして今日の PR 数による開発者評価まで、仕組みはまったく同じである。
- 画像のストレージと変換を Cloudflare Images に任せる Web ページに画像を一枚置くのはフロントエンドで一番簡単なことだ。でもそれをちゃんとやる——リサイズし、各フォーマットを生成し、トラフィックにも耐える——となると、実はひとつの解決策まるごとになる。だから僕は結局、原画一枚だけ渡して全部 Cloudflare Images に任せた。
- Access Keyはもう使うな Access KeyはAWSで見落とされがちなセキュリティリスクだ。OIDCとIAM Roleを組み合わせれば、GitHub Actionsはsecretなしで安全にAWSリソースを操作できる
- データベースの主キー: AUTO_INCREMENT、UUID、UUIDv7 バックエンド開発では主キーをどうするかをよく決める必要がある。auto increment か UUID か、衝突はどうするか、UUIDv7 と created_at + index の性能差はどれくらいか。実際に 2000 万件のデータで検証し、設計判断までまとめる。