https://github.com/howprogrammingworks/codereview
Code Review Examples
https://github.com/howprogrammingworks/codereview
Last synced: 7 months ago
JSON representation
Code Review Examples
- Host: GitHub
- URL: https://github.com/howprogrammingworks/codereview
- Owner: HowProgrammingWorks
- License: mit
- Created: 2019-10-21T18:46:08.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2023-09-24T10:16:17.000Z (over 2 years ago)
- Last Synced: 2023-09-24T18:28:45.968Z (over 2 years ago)
- Language: JavaScript
- Homepage:
- Size: 77.1 KB
- Stars: 7
- Watchers: 4
- Forks: 7
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
## Code Review
[](https://www.youtube.com/watch?v=EKL6NiIQ6ZU)
[](https://www.youtube.com/watch?v=AgH4OAKbmkM)
Задачи Code Review:
- Улучшение качества кода и поиск лучших решений
- Повышение квалификации разработчиков
- Передача знаний и изучение работы коллег для группового владения кодом
- Поиск лучших решений
- Граничные случаи
Почему делаем Code Review:
- Замыленный глаз
- Что, если разработчика переедет автобус?
- Команда эффективнее разработчиков-одиночек
Что ищем на Code Review:
- Соответствие структуре и архитектуре проекта
- Соответствие техническому заданию
- Читаем ли код коллегами, понятно ли всем именование
- Как можно повысить информативность кода
- Возможно ли улучшение метрик сложности алгоритмов
- Возможно, стоит изменить структуры данных
- Оптимизация алгоритмов
- Другие алгоритмы
- Состояние гонки
- Утечки памяти
- Безопасность
- Антипаттерны
- Обработка ошибок
- Лишние зависимости или из замена
- Улучшение структуры и интеграции программных компонентов
- Уменьшение зацепления
- Увеличение связности кода
- Вредные привычки
Чего не ищем (должно быть автоматизировано в CI):
- Стандарты кодирования (кроме первого случая)
- Вопросы стиля
- Правила именования идентификаторов
- Повторный код
- Покрытие тестами
- Метрики
Процесс создания и принятия Pull Request:
- Когда подаем?
- Зачем? У каждого PR должна быть цель
- Кого добавляем?
- Как быстро обрабатываем?
- Как обсуждаем?
- Консенсус
- LGTM
Проблемы и о чем нужно помнить:
- Code Review занимает время
- Раздражает
- Сведение счетов
- Доказать кто круче
- Понятность запроса от инициатора
- Просто странный код без всяких комментариев и цели ревью
- Почему меня просят про Code Review?
- Дополнительные вводные и комментарии
- Понятность отзыва от ревьюера
- Не пишем: это что-то странное тут...
- Не сводим к формальностям
- Не пишем повестей на много страниц
- Что бывает, когда много изменений в одном PR
- Что бывает, когда мало изменений в одном PR
- Почему лучше сначала планировать разработку
- Почему лучше делать тесты отдельным коммитом
- Начните с высокого уровня
- Пред коммитом сами просмотрите
- Избегайте новых коммитов во время PR
- По возможности избегайте альтернативных но не связанных PR
- Отвечайте на вопросы