人々がコードレビューを行っている頻度と、レビューを行うことが正しいと思われる頻度を知りたいのですが、また、コードレビューの実行方法についても聞きたいと思います。私は今はTTCを使用しています。私はそれにはかなり満足していますが、コードのすべての部分をカバーしているとは思いません。コードレビューはどのくらいの頻度で行う必要がありますか?
答えて
コードがをトランクにコミットする前に、常にコードレビューを実行します。私はニール・バターワースのコメントに同意します。頻繁なコミットが奨励されるべきものであり、コミットする前にコードレビューが必要であるということは、これを禁じます。
正確な条件は、環境とプロジェクトによって異なります。私たちの環境は、次のとおりです。
- はトランクが常に仕事は(すなわち、コンパイルやテストを失敗しないトランクに物事をコミットしていないしなければならないというルールがあるトランクに開発の主力をキープ、など)各ケース(機能、バグフィックスなど)
- が、それが審査 を通過するときにトランクにダウンブランチをマージ
- 与えられたブランチでの作業が終了したコードレビューを行いため
- 支店
- リリースが行われると、金のリリースリビジョンとブランチにタグを付けます。特定のリリースのすべての新しいバグ修正は、そのブランチで行われます。リリースブランチはトランクに統合されることはありません。私たちの環境では
、これは、開発者が(自分の支店の範囲内で)頻繁にコミットすることを可能にすると、コードごと作業の単位(ただし、すべてのコミット)を実行するレビュー。
コードレビューの実行方法については、これはもっと野心的な質問です。 SOにそれ自身の質問に値する一つは(と、すでに実際にいくつかある):
https://stackoverflow.com/questions/89163/how-to-conduct-a-successful-code-review Best Peer Code Review Software https://stackoverflow.com/questions/tagged/code-review
チェックインの前に、チェックインは機能/モジュールの論理仕上げと接続されることがよくあります(プログラマに依存します)。これは良いタイミングです。コードがチェックインされているときは、誰が何時にコード化したのかを追跡することは、すでに困難です。
は、私は完全にコードレビューは、チェックインの前に行わなければならないことを同意しません。頻繁なチェックインが奨励されるべきものであり、コードレビューは必須のツールではあるが、このようにしかできない。 –
@ Neil、あなたの選択肢plzでお答えできますか? –
あなたのチームが慣れ親しんでいるサイズを各レビューで確認することもお勧めです。あなたは、変更のサイズとレビューが行われる頻度との間のバランスを探しています。チャンクが大きすぎると、批評家は興味を失い、細心の注意を払う代わりに光沢を上げることがあります。審査員の実際の作業に有利なように、レビューが頻繁に行われることもあります。 –
チェックインする前にいつでもチェックインする予定のコードですが、プロジェクトによってはそれよりも頻繁にやりたいことがあります。
誰かが数週間かかるプロジェクトに取り掛かっていて、その期間のコードをチェックインしない場合は、プロジェクトのさまざまなコンポーネントが完了したときにコードを受け取る必要があります。その理由は、悪いデザインパターンがプロジェクト全体を通して繰り返されず、レビューから必要な変更が少ないことを確認するために、コードを継続的に見直すからです。
私は、開発者がより多くのジュニアであるほど、コードをレビューする頻度が高いことを提案します。
数週間のチェックインはありませんか?コードは1日に数回チェックインする必要があります。 –
より良い方法は、チェックインではなく親ブランチへのプロモーションです。 –
- 1. Androidでどのくらいの頻度でデータを更新する必要がありますか?
- 2. Pythonでどのくらいの頻度でカスタム例外を定義する必要がありますか?
- 3. どのくらいの頻度でlog4j2の設定ファイルを設定する必要がありますか?
- 4. アプリケーションプールをどのくらいの頻度でリサイクルする必要がありますか?
- 5. SQL Server 2005 - インデックスをどのくらいの頻度で再構築する必要がありますか?
- 6. SQL CEデータベースをどのくらいの頻度で圧縮する必要がありますか?
- 7. コードレビューを文書化する必要がありますか?
- 8. イベントループはどのくらいの頻度でブラウザで実行されますか?
- 9. GCはどのくらいの頻度で実行されますか?
- 10. モバイルアプリではどのくらい処理する必要がありますか?
- 11. スプレーでパペットを実行する頻度はどのくらいですか?
- 12. WP7でXNAの読み取り頻度はどのくらいですか?
- 13. 角度ルーティングのhtmlファイルはどこに置く必要がありますか?
- 14. MySQLはどのくらいの計算を行う必要がありますか?
- 15. TDDはどのくらい適用する必要がありますか?
- 16. データベースでどのくらい作業をする必要がありますか?
- 17. MySQLでどのくらいの頻度でデータベースビューが更新されますか?
- 18. ループにオブジェクトを挿入する場合、NSManagedObjectContextをどのくらいの頻度で呼び出す必要がありますか?
- 19. NSUserDefaultsはどのくらいの頻度で同期されていますか?
- 20. イニシャライザはどのくらいの頻度でRailsで動作しますか?
- 21. MongoDB:データベースを開いたり閉じたりする頻度はどれくらいですか?どうして?
- 22. Bundlerのセットアップはどこで行う必要がありますか?
- 23. autoconfを実行する頻度はどれくらいですか?
- 24. C++ 14どのくらいの頻度でconstexprを使うべきですか?
- 25. xhr.upload.onProgressはどのくらいの頻度で起動しますか?
- 26. WaveInEventハンドラはどのくらいの頻度で起動しますか?
- 27. viewDidLoadはどのくらいの頻度で呼び出されますか?
- 28. jiffiesはどのくらいの頻度で更新されますか?
- 29. ロボットフレームワークからPOSTリクエストを行う必要があります
- 30. 深度に依存しないブレンドをどのように行う必要がありますか?
興味深いアプローチでは、バグや機能の作業を開始するときに何か手間がかからないように、これを合理化するためにどのようなツールを使用しますか? –
+1:これは、私が取り組んだすべてのプロジェクトのためのかなり標準的なプラクティスです。簡単で簡単です。 –
FogBugzをケーストラッキングに使用し、Subversionをソース管理に使用します。 TortoiseSVNでトランクから分岐し、作業コピーを切り替えるだけです。その後、作業が完了し、レビューの準備が整うと、ケースをレビュー担当者に割り当てます。レビューが完了すると、元の開発者はTortoiseSVNでトランクにマージします。私はFogBugz 7(まだ6になっている)はワークフロー管理を提供しているので、SVNの手順ではなくワークフローの一部を自動化できると思います。このワークフローに従うのが難しい、または退屈であることはわかりません。 –