Когда я учился в колледже, был курс, на котором мы должны были взяться за проект по программной инженерии в команде из двух человек. Это был первый раз, когда я столкнулся с парным программированием, но в то время я никогда не осознавал, что для этого на самом деле существует «термин». Парное программирование — это метод, при котором два программиста работают на одном компьютере одновременно: однако только один из них выполняет фактическое кодирование, а другой проверяет каждую строку кода по мере ее написания. Время от времени они меняются местами и продолжают кодить. Того, кто кодирует, называют якорем, а другого навигатором. Из своего опыта я хотел бы набросать плюсы и минусы парного программирования.
Плюсы:
- Два разных взгляда на проблему: когда вы программируете в паре, может случиться так, что вы не в состоянии думать со всех точек зрения, и любая другая точка зрения - это все, что вам нужно. Вы можете посмотреть на проблему с двух разных точек зрения и найти решение гораздо быстрее и проще. Однако, поскольку оба программиста работают бок о бок, необходимо соблюдать осторожность, чтобы оба не всегда думали об одном и том же.
- Быстрое обнаружение багов и ошибок: небольшие синтаксические ошибки и баги легко обнаруживаются прямо здесь и сейчас. Хотя это кажется очень небольшой проблемой, это может сэкономить вам много времени на отладку и разочарование, что, в свою очередь, повысит вашу производительность.
- Объединение знаний: можно также многому научиться у своего партнера. Объединение знаний, полученных вами и вашим товарищем по команде, несомненно, повысит вашу производительность и производительность. Вместо того, чтобы обращаться за помощью к своим наставникам и учебникам, вы можете легко учиться у своего партнера.
- Уменьшенная зависимость: предположим, вы работаете над большим проектом, и в вашей команде есть разработчик, который знает определенный модуль проекта, но из-за некоторых неизбежных обстоятельств этот парень недоступен. Проект, безусловно, остановится, так как нет другого человека, который знает этот модуль. Если бы это был тот случай, когда парень работал бы в паре с кем-то из вашей команды, проект бы не остановился и, следовательно, зависимость уменьшилась бы.
- Меньше стресса и лучше концентрация: работа в команде из двух человек снижает уровень стресса. Пока вы становитесь навигатором, ваш разум и тело получают некоторое время для отдыха, что может улучшить вашу концентрацию и снять умственную усталость.
Минусы:
- Снижение производительности: с некоторыми людьми случается, что они не могут работать или концентрироваться, пока кто-то наблюдает за ними или прерывает их. Работа в команде из двух человек обычно становится социальным делом, и в конечном итоге вы тратите время на разговоры, болтовню и веселье.
- Неравенство навыков: это потенциальная проблема номер один. Если партнеры имеют совершенно разный уровень квалификации, у вас может быть один программист, выполняющий всю работу или постоянно обучающий другого. Это нормально, если вы хотите установить отношения между учителем и учеником или знакомите нового программиста с вашей системой, но если нет, то это может свести на нет всю цель парного программирования.
- Трение и эго: Могут быть сценарии, в которых ваши мысли будут противоречить мыслям вашего товарища по команде. Эго двух разработчиков может столкнуться, что может поставить вас в тупик и разрушить отношения между товарищами по команде.
Я сам считаю парное программирование выгодным и продуктивным не только для программистов, но и для проектов, над которыми они работают. Но это вопрос выбора. Может показаться, что индивидуальное программирование лучше, чем парное. Но мой совет: прежде чем выбирать какой-либо из первых вариантов, попробуйте взвесить их плюсы и минусы с учетом требований вашего проекта.
До тех пор счастливого кодирования !!!