Привет! В своей работе мы используем парное программирование и сегодня хотим поделиться с сообществом советами, которые помогают нам повысить эффективность этого метода.
При парном программировании два программиста решают задачу совместными усилиями, сидя плечом друг к другу за одним компьютером. Первый выступает «водителем», который печатает код на клавиатуре, а второй служит «штурманом» — он следит за тем, чтобы в программе не было ошибок, занимается архитектурой кода, планирует последовательность действий и думает о правильности кодирования в стратегическом масштабе. Такой способ разработки позволяет поддерживать более высокую концентрацию, стимулирует тщательно продумывать решение еще до его реализации и значительно снижает количество ошибок и повышает качество кода.
Почему мы используем в работе парное программирование?
Парное программирование имеет целый ряд достоинств:
- В сравнении с одиночным программированием оно позволяет программистам успешнее противостоять стрессу. Члены пары поощряют друг друга поддерживать высокое качество кода даже в напряженных условиях, когда может возникать желание написать «грязный» код для ускорения выполнения задачи.
- Парное программирование повышает качество кода, благодаря тому, что наблюдатель постоянно проверяет, следит за качеством и понятностью кода и задает уточняющие вопросы. Таким образом, удобочитаемость и понятность кода всех разработчиков повышаются до уровня кода лучшего программиста группы.
- Парное программирование ускоряет разработку системы. Как правило, пары пишут код быстрее, и большинство ошибок можно обнаружить сразу в процессе кодирования, а не тестирования. Соответственно в конце проекта группе приходится тратить намного меньше времени на исправление дефектов.
- Парное программирование усиливает взаимодействие внутри команды. Во время работы над проектом пары рекомендуется перемешивать, чтобы каждый разработчик в команде к моменту окончания проекта обладал глубокими знаниями о каждой из его частей.
- Парное программирование обеспечивает все остальные общие преимущества совместного конструирования, такие как распространение корпоративной культуры, обучение начинающих программистов и содействие совместному владению результатами работы.
Как сделать парное программирование более успешным
Чтобы извлечь из всех преимуществ парного программирования еще большую пользу, нужно соблюдать несколько простых правил:
№1. Поддерживайте парное программирование стандартами кодирования
Парное программирование теряет эффективность, если члены пары тратят время на споры о стиле кодирования. Чтобы избежать разногласий, нужно стандартизировать «несущественные атрибуты» программирования, чтобы разработчики могли сосредоточиться на стоящей перед ними «существенной» задаче и не отвлекались на согласование стилей.
№2. Не превращайте парное программирование в наблюдение
Парное программирование — это совместная работа, а не наблюдение одного разработчика за другим. Программист, который не занимается непосредственно написанием кода, должен принимать активное участие в разработке: анализировать код, планировать следующий этап, оценивать проект программы в целом, думать о том, как проводить тестирование и т.д.
№3. Определяйте задачи, которые целесообразно решать в парах
В большинстве компаний, использующих парное программирование, в итоге приходят к выводу, что в парах лучше выполнять не все, а только некоторые части работы. С реализацией простых фрагментов кода разработчик эффективнее справится самостоятельно. Кроме того, в некоторых случаях для написания наиболее сложного кода выгоднее посвятить 15 минут детальному проектированию на доске и затем программировать поодиночке.
№4. Постоянно меняйте состав пар и назначаемые им задачи
Как и при использовании других методик совместной разработки, одно из главных преимуществ парного программирования в том, что каждый из разработчиков изучает разные части системы. Регулярная смена состава пар помогает стимулировать обмен опытом и знаниями между всеми членами команды. Некоторые эксперты рекомендуют менять состав пар ежедневно.
№5. Старайтесь объединять в пару людей с одинаковым темпом работы
Когда один из партнеров работает слишком быстро, второму приходится стараться успевать за его темпом, что снижает качество анализа кода. В таком случае парное программирование не выполняет нужную функцию и начинает терять смысл. Член пары с более высокой скоростью должен снизить темп, либо пару нужно разбить и переформировать в другом составе.
№6. Оба члена пары должны хорошо видеть экран
Убедитесь в том, что оба разработчика хорошо разбирают код на экране. Неправильное расположение монитора или слишком мелкий шрифт могут снижать эффективность парного программирования.
Не стоит забывать и об эргономике — когда при передаче клавиатуры от одного члена пары другому, она остается в центре стола и каждому приходится наклоняться, оба быстро устанут и начнут терять концентрацию.
№7. Не объединяйте в пару людей, которые не нравятся друг другу
Как и в других совместных задачах, чем лучше отношения между членами пары и чем больше они соответствуют друг другу по характеру, тем выше будет результативность работы. Эффективность парного программирования зависит от того, насколько хорошо разработчики ладят друг с другом, поэтому объединять в пару людей, у которых не очень складываются отношения, бессмысленно.
№8. Не составляйте пару из людей, которые ранее не имели опыта в парном программировании
Максимальную выгоду от парного программирования можно получить, если хотя бы один из разработчиков в паре уже имел опыт парного программирования и сможет научить второго.
№9. Выбирайте лидера группы
Когда все члены команды хотят выполнить реализовать все задачи, используя программирование в парах, выберите ответственного за распределение задачи и контроль результатов проекта.
А вы используете парное программирование? Поделитесь своими секретами в комментариях!
Автор: RetailRocket