Что такое парное программирование? - PullRequest
4 голосов
/ 30 марта 2009

Этот термин, кажется, довольно часто используется в англоязычных сообществах. Мне интересно, что это? Это как два студента пишут код на одном компьютере или как? Эта организация (какая бы она ни была) используется только в США?

Ответы [ 5 ]

12 голосов
/ 30 марта 2009

Парное программирование - одна из основных практик экстремального программирования (XP). Это буквально означает, что два человека работают на одном компьютере, обычно один за клавиатурой (часто называемый водителем) и партнер (называемый пассажиром или дробовиком). Считается, что он повышает производительность и качество сгенерированного кода, а также обеспечивает групповое владение кодом - еще один принцип XP.

6 голосов
/ 30 марта 2009

http://en.wikipedia.org/wiki/Pair_programming

Парное программирование - это метод разработки программного обеспечения, при котором два программиста работают вместе на одной клавиатуре. Один вводит код, а другой просматривает каждую строку кода в том виде, в каком он введен. Человек, который печатает, называется драйвером. Человек, просматривающий код, называется наблюдателем 1 или навигатором. Два программиста часто меняются ролями (возможно, каждые 30 минут).

При рассмотрении наблюдатель также рассматривает стратегическое направление работы, предлагая идеи для улучшения и вероятные будущие проблемы для решения. Это позволяет водителю сосредоточить все свое внимание на «тактических» аспектах выполнения текущей задачи, используя наблюдателя в качестве защитной сетки и руководства.

5 голосов
/ 30 марта 2009

Если сомневаетесь, спросите Википедию: Программирование пар . Общая идея состоит в том, чтобы один человек писал код, а другой - на ошибки и сплоченность.

1 голос
/ 12 мая 2009

Парное программирование - это когда два разработчика работают на одной карточке истории, используя один компьютер и клавиатуру. Это считается экстремальной практикой программирования. Экстремальное программирование берет что-то положительное, в данном случае обзор кода, и доводит это до крайности. Преимущества за пределами непрерывного анализа кода следующие:

  • Улучшенное качество : пара активных программистов, работающих над одной исторической картой, дополнит карту меньшим количеством дефектов
  • Повышение производительности : вероятность того, что пара замедлится, если не будет полностью заблокирована при решении проблемы. Кроме того, когда вы работаете с партнером, труднее взять отпуск по электронной почте или через Интернет ... вы не хотите разочаровывать партнера. Вы решите проблему с более чистым дизайном и меньшим количеством строк кода при работе в паре
  • Ликвидация накопленных знаний : с помощью ротационных пар вы будете изучать прикладные и предметные знания в рамках всей команды. Команда с меньшей вероятностью будет заблокирована, потому что Сью находится в отпуске, и никто другой не знает ее код.
  • Передача знаний: Вращающиеся пары учат друг друга новым навыкам (инженерному делу и предметной области), когда они работают вместе. Уровень команды повысится для всех, и знания распространяются через команду.
  • Команда самостоятельно выбирает: Команда изучает навыки одного пыльника и быстро отсеет того, кто не выполняет.
1 голос
/ 14 апреля 2009

Расширение парного программирования, иногда используемое практиками Test Driven Development - Ping Pong Pairing .

Пинг-понг работает примерно так:

  • Написать неудачный тест (разработчик A)
  • Внедрить код, который затем проходит тест (необязательно) Refactor (разработчик B)
  • Написать неудачный тест (разработчик B)
  • Внедрить код, который проходит тест, а затем (необязательно) Refactor (разработчик A)
  • и так далее ...

Одним из преимуществ Ping Pong Pairing является то, что любому разработчику трудно спать очень долго; -)

...