Обзор кода — неотъемлемая часть разработки программного обеспечения.

Зачем мне код-ревью?

  1. Не потому, что мой менеджер или технический руководитель не доверяет моей реализации.
  2. Потому что вторая пара глаз, глядя на код в своем собственном темпе, имеет хорошие шансы найти сбой в коде ИЛИ помешать мне проверить плохой код.

ЗАЧЕМ ПРОВЕРЯТЬ КОД?

Помните, что автор доверяет вашему мнению и поэтому просит вас уделить драгоценное время для предоставления конструктивного отзыва о его/ее коде.

Когда мы узко сосредоточены на реализации определенного интерфейса или класса процессора, мы, вероятно, делаем ошибки. Чтобы избежать попадания этих ошибок в производство и плохого обслуживания клиентов, мы просим наших коллег оценить нашу работу.

При просмотре чьего-либо кода я, по крайней мере, ищу:

  1. Правильное наименование методов, переменных, классов. Имеют ли они смысл, понимаете ли вы их обоснование без необходимости комментариев?
  2. Соблюдение правил кодирования команды или компании
  3. Отступ.
  4. Длинный код метода пахнет.
  5. Повторы любой логики.
  6. Вложенные циклы if, циклы for, операторы switch.
  7. Нулевые проверки, пустые проверки, правильные проверки даты.
  8. Достаточно инструментовки и обработки исключений/ошибок.
  9. Модульные тесты, охватывающие сценарии.
  10. Много комментариев. Это опасно, если вам нужно объяснить свой код на английском языке. Комментарии приносят самодовольство в написании чистого кода.

Иногда лучше связаться с автором кода один на один, чтобы проверить код. (иногда, не всегда!!)

Как ставить комментарии:

  1. Не воспринимайте ваши комментарии как инструкции или команды.
  2. Внесите предложения и объясните, почему вы считаете, что один способ лучше другого.
  3. Хвалите хорошо написанный код.
  4. Задавайте вопросы, если вас интересует конкретный фрагмент кода, и помечайте его как вопрос.

Примечание. Они являются базовыми для людей, которые только начинают свою карьеру. По мере того, как люди получают больше знаний в предметной области и приобретают опыт, обзоры кода могут становиться более подробными.