A programação em pares é uma técnica ágil de desenvolvimento de software que envolve dois programadores trabalhando em uma única estação de trabalho.
Quando se trata de desenvolvimento de software, escrever código-fonte de alta qualidade e livre de defeitos é imperativo. Para garantir ou melhorar a qualidade do código-fonte que os desenvolvedores escrevem, eles realizam uma variedade de tarefas, incluindo revisões de código, verificação de erros, loops iterativos, linting e feedback rápido.
A programação em pares é uma das técnicas de desenvolvimento mais típicas frequentemente adotadas em ambientes de trabalho ágeis. Como o próprio nome sugere, a programação em pares envolve duas cabeças em vez de uma para realizar uma tarefa de codificação específica. Eles compartilham uma única estação de trabalho e trabalham de forma colaborativa para escrever o código-fonte, além de realizar todas as outras atividades necessárias para melhorar sua qualidade.
Nesta técnica de desenvolvimento, um programador é o driver que escreve o código e o outro é o observador ou navegador que revisa cada linha de código assim que o primeiro a escreve.
No entanto, esses dois programadores podem alternar seus papéis conforme seu conforto. Às vezes, a programação em pares é chamada de emparelhamento.
Quando o navegador ou observador revisa o código, ele apresenta melhorias no código e todos os possíveis problemas futuros. A intenção principal da programação em par é permitir que o driver se concentre completamente em escrever o código efetivo enquanto o observador é um guia ou rede de segurança.
Variações de emparelhamento
Como a programação em par envolve dois programadores, existem três variações de emparelhamento diferentes, como segue:
- Newbie-Newbie: Este emparelhamento envolve tanto programadores iniciantes. No entanto, as organizações raramente colocam em prática essa variação de emparelhamento.
- Expert-Newbie: As organizações colocam em prática essa variação de emparelhamento para ajudar um novato a aprender sob a orientação de um programador especialista.
- Expert-Expert: Essa variação de emparelhamento resulta em maior produtividade e eficiência, pois ambos os programadores são especialistas.
Esteja ciente do fato de que esses programadores frequentemente trocam de papéis para que possam revisar o trabalho uns dos outros. Eles também ganham experiência trabalhando com diferentes aspectos do desenvolvimento. Além disso, a troca de papéis os mantém alertas e engajados.
Geralmente, a programação em pares aproveita os diferentes estilos:
1. Estilo Driver-Navigator
O estilo driver/navigator é um dos estilos mais utilizados. O driver lida com a codificação enquanto o observador consegue revisar. Eles geralmente trocam de papéis durante o desenvolvimento. Além disso, é um estilo ideal quando um programador é experiente e o outro é iniciante.
2. Estilo não estruturado
O estilo não estruturado funciona de maneira ad-hoc, onde os dois programadores decidem na hora se serão o motorista ou o observador. No entanto, esse estilo não é ideal para projetos de longa duração.
3. Estilo de pingue-pongue
Esse estilo funciona bem com desenvolvimento orientado a testes, onde um programador escreve testes e o outro faz esses testes passarem. Semelhante ao estilo do driver/navegador, as funções de escrever e passar nos testes continuam mudando com frequência.
VANTAGENS
Detecção mais fácil de bugs: enquanto um desenvolvedor escreve o código, o outro revisa linha por linha e identifica bugs ou erros no código.
Aprendizado mútuo: Como dois programadores trabalham coletivamente, eles podem compartilhar seus conhecimentos com o outro.
Melhores habilidades de comunicação: dois desenvolvedores trabalham constantemente por horas, colaboram entre si e compartilham conhecimento. Isso resulta em melhores habilidades de comunicação.