Что такое код-ревью и зачем это нужно?
Источник:
DZone
Создать стартап сложно, но написать для него программное обеспечение не легче. Чтобы софт отлично работал, нужен хороший код. Но как убедиться в том, что ваш код действительно хорош?
Работая с клиентским кодом, мы обнаружили, что многие разработчики-фрилансеры и даже IT-компании игнорируют код-ревью (code review). Ну и поскольку наша команда считает проверку кода стандартным этапом работы, мы решили объяснить нашу точку зрения.
Итак, начнем с базовой терминологии.
Что такое код-ревью?
Это систематическая проверка исходного кода программного обеспечения, предназначенная для поиска ошибок и оценки качества. Обзор кода состоит из следующих этапов:
- Определение наиболее эффективных способов выполнения задачи;
- Поиск логических ошибок;
- Поиск наиболее распространенных уязвимостей;
- Обнаружение вредоносных программ — особый вид проверки кода для поиска подозрительных фрагментов кода или поиска и любых вредоносных программ, интегрированных в программное обеспечение.
Зачем нужен код-ревью?
Существует несколько причин, по которым проверка кода считается необходимой частью разработки.
Первая причина — снижение рисков. Допустим, у вас есть программное обеспечение, написанное фрилансером или агентством, но вы не уверены в качестве работы, потому что даже хорошие разработчики могут что-то упустить. Так что перепроверка — всегда хорошая идея.
Более того, работая вместе над изучением кода, каждый член команды может предложить более разумные решения, которые улучшат общую производительность проекта.
Главное, что нужно помнить о проверке кода, — это то, что ее следует выполнять ДО того, как ваша новая команда разработчиков возьмется за кодовую базу или проект. Ревью кода перед запуском проекта дает вашей команде возможность ознакомиться с ним и определить качество кода и то, нужны ли доработки.
Путеводитель по ревью кода
Мы решили подготовить на основе своего опыта краткое руководство для разработчиков, которые собираются проверять исходный код своих проектов.
Разделите код-ревью на временные интервалы
Не пытайтесь проанализировать весь проект сразу. Специалисты советуют не просматривать сразу более 400 строк кода. Причем разовая проверка должна занимать не более часа. Люди не могут эффективно обрабатывать такой объем информации, особенно в течение длительного периода времени. Когда вы превышаете эту отметку, способность обнаруживать ошибки заметно снижается, поэтому вы можете пропустить некоторые важные ошибки.
Обратитесь за помощью к товарищам по команде
Одна голова хорошо, а две — лучше. Вы можете быть удивлены, насколько повысится качество обзора, если вы поделитесь этим процессом с кем-то другим. Мы привыкли выполнять совместную проверку кода с помощью
Crucible от Atlassian. Этот инструмент позволяет назначать дополнительных рецензентов, обсуждать выделенные строки исходного кода, файлы или весь набор изменений.
Совместная проверка кода не только улучшает программное обеспечение, но и повышает уровень компетентности команды за счет обмена знаниями при обсуждении.
Фиксация показателей
Перед тем как приступить к проверке, команда должна поставить точные цели, например, «снизить процент дефектов вдвое». Цель «найти больше ошибок» слишком абстрактная, поэтому ее невозможно достичь. Во время обзора фиксируйте такие показатели, как скорость выполнения проверки, количество ошибок, обнаруженных за час, среднее количество ошибок на строку кода. Постоянное отслеживание результатов рецензирования покажет вам реальную картину внутренних процессов.
Сохраняйте положительный настрой
Обзор кода иногда может ухудшить отношения внутри команды. Никто не любит, когда его критикуют, поэтому очень важно поддерживать дружескую атмосферу, если только вы не хотите, чтобы ваши коллеги потеряли мотивацию. Вместо того, чтобы воспринимать каждую ошибку негативно, подумайте о том, что это новые возможности для улучшения качества кода в целом.
Настройте процесс исправления ошибок
Итак, ваша команда завершила обзор кода, но что насчет исправления всех обнаруженных ошибок? Для нас было неожиданностью узнать, что далеко не у всех команд разработчиков есть выработанный метод исправления найденных ошибок. К счастью, мы коллективно работаем не только над поиском ошибок, но и над их исправлением. Все ошибки обсуждаются с создателем (кроме ситуаций, когда мы просматриваем код другой команды), и все изменения всегда утверждаются перед отправкой в исходный код.
Подведение итогов
Просмотр кода должен стать важным процессом в любой компании, занимающейся разработкой, поскольку он помогает поддерживать стандарты высокого качества кодинга. Совместная работа над код-ревью объединяет команду и дает возможность делиться знаниями и опытом внутри компании. Поэтому, если вы запускаете стартап или передаете проект другой команде, всегда делайте проверку кода, чтобы ваше ПО было наилучшего качества.
Синдром самозванца — лучший друг разработчика
Источник:
Catalins.tech
Прочитав заголовок, вам может показаться, что со мной что-то не так. Но я повторюсь: синдром самозванца — лучший друг разработчика, если направить его в нужное русло. Я также считаю, что синдром самозванца так широко распространен в разработке ПО из-за большого объема знаний, которыми вы должны обладать, постоянной смены инструментов и языков программирования.
Язык программирования и инструменты, которые вы используете сегодня, могут устареть уже через год. Это означает, что вам опять придется в какой-то мере «начинать с нуля». Создание программного обеспечения — очень динамичная среда, в которой нужно постоянно учиться. Но, несмотря на трудности, к ним можно привыкнуть.
Таким образом, избавиться от синдрома самозванца практически невозможно. Почему бы тогда не научиться жить с ним?
У большинства из нас он есть
Позвольте мне сказать вам еще кое-что. Почти все мы страдаем синдромом самозванца. Всегда есть кто-то лучше нас. Всегда есть что-то, чего мы не знаем. Всегда есть чему поучиться. Каждый день выходит новый инструмент. Время от времени появляются новые технологии или язык программирования. Вы никогда не сможете всё это выучить. Пытаться не отставать тоже очень сложно. И вот так появляется синдром. Вы начинаете задавать себе вопросы: «Смогу ли я когда-нибудь это сделать?», «Смогу ли я когда-нибудь делать x, y, z?», «Узнаю ли я технологии x, y, z? »,«Что, если я самозванец?», и этот список можно продолжить. Ответ — да, да и да.
Кстати, синдром самозванца проходит хуже у тех новичков, которые чувствуют, что никогда не добьются успеха в этой области. Я тоже через это прошел. Преодолеть синдром можно упорным трудом.
Представьте себе
Вы не единственный, кто задает себе эти вопросы. У вашего коллеги по работе те же проблемы. У разработчика, на которого вы подписаны в Твиттере, также возникают подобные вопросы. И у видеоблогера с 50000 подписчиками. И передо мной тоже появляются эти вопросы, хотя у меня есть работа и все хорошо.
Вопросы беспокоят не только вас. Синдром самозванца — часть нашей профессии. Конечно, некоторые люди справляются с этим лучше, поэтому не так очевидно, что у них тоже есть проблемы. Но поверьте: они есть почти у всех нас.
Что же делать?
Прежде всего, вы должны понимать, что синдром самозванца может стать вашим лучшим другом. Ведь он подталкивает вас становиться лучше. Ощущение, что вы не созданы для этой отрасли, или что вы мало знаете, может стать стимулом к тому, чтобы узнать больше. В результате с каждым днем вы становитесь лучше. Я использую синдром самозванца как топливо, как мотивацию стать лучшим разработчиком, и это работает очень хорошо. Но будьте осторожны — это может быстро подтолкнуть вас к выгоранию. Поверьте, вам это не нужно.
Всякий раз, когда вопросы и иррациональные мысли закрадываются в вашу голову, ПОМНИТЕ, что все разработчики страдают таким же синдромом. ПОМНИТЕ, что всегда есть разработчик лучше вас. Но также ПОМНИТЕ, что всегда есть разработчик, который хуже вас. ПОМНИТЕ, что вы никогда не можете узнать всего, и это нормально. Вам нужно знать лишь несколько инструментов, которые имеют отношение к вашей работе. Приложив упорство, вы можете стать хорошим разработчиком.
Вы думаете, что станете самым лучшим программистом? Скорее всего, нет. Будете ли вы работать в Amazon / Facebook / Google / Apple? Вероятно, тоже нет. Заработаете миллионы? Вряд ли. Но знаете что? Это нормально. Вам не нужно делать ничего из этого, чтобы стать хорошим разработчиком. Ведь на самом деле, большинство из нас никогда не достигает всех этих целей.
Помните
- Почти у всех нас синдром самозванца.
- Вы можете достичь успеха в этой отрасли благодаря своему упорству.
- Вы никогда не узнаете всего, и это нормально.
- Всегда есть разработчики лучше вас, но есть и разработчики хуже вас.
- Вам не обязательно быть «суперзвездой» среди программистов. Достаточно быть хорошо выполнять свою работу.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ