Pages

четверг, 11 августа 2011 г.

Read the Diffs – Сравни изменения


Утро рабочего дня, вы уже выпили кофе и окончательно проснулись.  Но перед тем  как приступить к решению своих задач, стоит выполнить одно простое правило - сравнить изменения.

Используйте ваш любимый diff-tool, чтобы узнать обо всех изменениях в проекте, сделанных каждым участником команды за прошедший день.


Ежедневное сравнение изменений имеет три явных преимущества:

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


У лучших разработчиков это простое правило входит в привычку.

«Тщательные инспекции исходного кода - метод, в соответствии с которым весь программный код подвергается рассмотрению с целью обнаружения любых содержащихся в нем ошибок. Исследования, проводимые одно за другим, показали, что инспекции позволяют обнаружить до 90% ошибок в программном продукте до того, как будут запущены какие-либо эталонные тесты. А это показатель чрезвычайной эффективности процесса.»


Большинство систем контроля версий имеют встроенные утилиты просмотра изменений. Сервер непрерывной интеграции TeamCity позволяет осуществлять инспекции с привязкой не только к коммитам, но и к ежедневным сборкам проекта. Отлично работает с SVN и Git и имеет приятный интерфейс просмотра исходного кода с подсветкой изменений.

Из win-приложений для сравнения двух версий файлов мне больше всего нравится WinMerge. Если ваши инструменты не позволяют вам быстро и просто смотреть проведенные изменения - выбросьте их на помойку!


В завершение отмечу, правильное написание комментариев при коммите значительно облегчает проведение ревью. Об этом подробнее описано в отличной статье.  Всем разработчикам, кто еще пишет  комментарии, подобные  «», «багфикс»  и т.д. обязательно к прочтению! 

2 коммент.:

Анонимный комментирует...

Диффы шЫкарно показывает IDEA. В том числе и под windows. Все остальные программы, что я видел, показывают какое-то месиво, в разы хуже, чем простой раскрашенный вывод diff -u (например, colordiff -u).

Для важных внутренних проектов или библиотек настраивал отправку изменений из post-commit прямо в список рассылки. Тоже удобно, можно много успеть предотвратить.

Вообще, это мое любимое занятие — читать изменения, внесенные коллегами. :-)

Семён Кирюшин комментирует...

А мне удобнее всего оказался P4 он и дифы хорошо показывает, и мержить умеет. А по теме - в достаточно большом проекте не реально смотреть дифы, сделанные коллегами. Разве что визуально можно просмотреть, не вникая в логику

Отправить комментарий