Linus’s Law: «given enough eyeballs, all bugs are shallow»
«Зачем проводить Code Review?», — вопрос достаточно распространенный.
Ниже мне хотелось бы упомянуть о двух важных аспектах, о которых часто забывают.
Wikipedia о code review нам говорит следующее: «улучшение качества программного продукта и совершенствование навыков разработчика. …могут быть найдены и устранены такие проблемы, как ошибки в форматировании строк, состояние гонки, утечка памяти и переполнение буфера, что улучшает безопасность программного продукта»
Всё верно, но ревью кода решает еще две очень важные задачи, которые невозможно решить никаким иным путем:
- Синхронизация ментальных моделей
- Распространение знаний о коде
Все остальное: качество, корректность и т.д. так или иначе, костылями и/или автотулами можно сделать, а вот понять код можно только просмотрев код и никак иначе.