Ефективні рев'ю коду: 9 порад від исправившегося скептика

Я знав теорію. Рев'ю коду допомагає:
  • Знаходити баги
  • Забезпечувати читаність і поддерживаемость коду
  • Поширювати знання коду на всю команду
  • Дозволяти новим членам команди швидше входити в роботу
  • Показувати всім нові підходи до вирішення завдань
Або, це всього лише марна трата часу. Принаймні, таким було моє перше враження від рев'ю коду.

Я був нещодавно выпустившимся новачком, розробляє плагіни для софтверної компанії в Лондоні.
Через деякий час я повинен був надати блоки ідентичного або схожого коду. Вони повинні бути переглянуті нещасним хлопцем («Він у цьому кращий» — сказав мій менеджер. Жодна добра справа (не залишається безкарним). Тим не менш, кожне рев'ю поверталося з чимось новим. Це здавалося марно прискіпливим і випадковим процесом.
Гірше того, інспекції коду тяглися днями, якщо не тижнів. Коли я отримував код назад, я навряд чи міг згадати, як його писав. Це не було виною того хлопця. Він просив розробника рівня сеньйора, але отримав мене. Його нудило від помилок, які роблять недосвідчені розробники, і рев'ю коду спосіб прогнати це розчарування.
Додайте до цього час, втрачений на синхронізацію гілок, перемикання між контекстами… Я не був любителем цього, не було їх і в іншій команді, як з'ясувалося.
Перескочивши на кілька років вперед, я знаходжу себе згодним з твітом Джеффа Этвуда:
«Колегіальні рев'ю коду — це більше, що ви можете зробити для покращення вашого коду.»
Коли я оцінюю минулі роки, я розумію, що не рев'ю коду були поганими. Рев'ю коду робилося погано. І, хлопче, це ми проводили його погано.
Я дізнався на своїй шкурі. І, звичайно, розуміння не приходить миттєво. Лише через деякий час я зрозумів, що рев'ю коду врятували мене від більш ніж незручних ламають збірку змін! Але після того, як я попрацював в інших місцях, я придбав досвід різних і більш хороших способів роботи. Це дало мені можливість безпосередньо побачити користь від рев'ю коду, яку я раніше не визнавав. Тому зараз я вважаю себе исправившимся скептиком.
Так що ви можете уникнути таких болів: ознайомтеся з нашим відео і потім прочитайте поради, які наблизять вас до ефективним рев'ю коду.

9 порад про рев'ю

Для всіх:
  • Переглядайте тільки найважливіше, дайте інструментів зробити все інше
    Вам не треба сперечатися про форматування і кодстайле. Є безліч інструментів, які послідовно висвітлюють ці питання. Важливо, щоб код був коректним, зрозумілим і підтримуваним. Звичайно, стиль форматування — частина цього, але ви повинні дати інструментів перевірити ці речі.
  • Кожен повинен переглядати код
    Деякі люди в це краще за інших. Більш досвідчена людина цілком може виявити більше помилок, і це важливо. Але більш важливим є підтримка позитивного відношення до перевірки коду в цілому, і це дозволить уникнути відносини «Ми проти них», або того, що для рев'ю коду є обтяжливим для кого-то.
  • Переглядайте весь код
    Немає коду занадто короткого або занадто простого. Якщо ви переглядаєте все, то нічого не залишиться пропущеним. Більш того, це робить рев'ю частиною процесу, звичкою, а не вимогою.
  • Засвойте позитивне ставлення
    Це важливо як для ревьюверов, так і для авторів коду. Рев'ю коду — це не час щоб отримати всі п'ятірки і впливати своєю майстерністю кодування.
    Вам не треба приймати оборонну позицію. Підходьте до рев'ю з позитивним настроєм конструктивної критики, і ви зможете побудувати довіру до цього процесу.
Для ревьюверов:
  • Рев'ю коду має бути частим і короткими сесіями
    Ефективність ваших рев'ю знижується приблизно через годину. Так що відкладання рев'ю, щоб переглянути їх усі в одній величезній сесії не допоможе нікому. Знайдіть час протягом дня, збігається з вашими перервами — щоб не порушувати стан потоку і сформувати звичку. Ваші колеги будуть вдячні вам за це. Очікування може бути неприємно, і вони можуть вирішити питання швидше, поки код ще свіжий у їхніх головах.
  • Сказати «все добре» — це нормально
    Не будьте прискіпливі, вам не потрібно шукати проблему в кожному рев'ю.
  • Використовуйте чекліст
    Чеклисты для рев'ю коду забезпечують узгодженість — вони дають переконатися, що кожен переглядає важливі і поширені помилки.
Для авторів коду:
  • Код повинен бути коротким
    Через 200 рядків коду ефективність коду значно знижується. До того часу, коли ви перегляньте 400 рядків, вони стають майже безглуздими.
  • Забезпечте контекст
    Давайте посилання на будь-які пов'язані тікети або специфікації. інструменти для рев'ю коду типу Kiln, які допоможуть з цим. авайте короткі, але корисні повідомлення до коммитам і багато коментарів в коді. Це може ревьюверу і ви отримаєте менше питань.


Реєструйтеся зараз на вебінар «Рев'ю коду з Kiln»

Приєднуйтесь до нашого наступного онлайн-вебінару. Він допоможе новачкам дізнатися основи про інспекціях коду в нашому продукті.
Ми обговоримо:
  • Що таке рев'ю коду
  • Навіщо використовувати рев'ю коду
  • Коли його використовувати
  • Що дивитися під час рев'ю
  • Створення рев'ю
  • Коментарі в рев'ю і відповіді до них
  • Роботу з існуючими рев'ю
  • Процес рев'ю коду
Щоб зайняти місце, реєструйтеся зараз.

Примітка перекладачаТекст — в значній мірі реклама продукту від FogCreek і їх вебінарів. Але текст про рев'ю коду не прив'язаний ні до продукту, ні до пропонованих ними workflow. Який би інструмент ви не використовували, поради про рев'ю залишаться актуальними. І, можливо, комусь вони будуть корисні.
Буду радий зауваження щодо поліпшення перекладу побачити в приват, а по тексту — в коментарях до посту.

Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.