TEMA 05 Flashcards
O que é pair programming?
De acordo com Fowler (1999), o pair programming “é uma prática na qual dois
programadores trabalham juntos em um computador para desenvolver softwares. Envolve discutir o que fazer, projetar, codificar, testar e, de certa forma, constantemente revisar o trabalho um do outro.”
O pair programming, ou programação em pares, é fundamentado em colaboração e trocas
contínuas de ideias e conhecimentos da dupla.
O desenvolvedor que escreve o código é chamado de piloto, enquanto o desenvolvedor que está acompanhando, questionando, contribuindo com
alternativas e detectando possíveis problemas é chamado de observador ou navegador.
Quais são os benefícios da pair programming?
Aumento da qualidade do código, já que dois desenvolvedores estão trabalhando juntos para
encontrar e corrigir erros;
Maior produtividade, pois dois desenvolvedores podem trabalhar em diferentes tarefas
simultaneamente, o que aumenta a quantidade de trabalho concluído;
Melhora na comunicação e colaboração entre os membros da equipe, reduzindo mal-
entendidos e conflitos;
Maior aprendizado e compartilhamento de conhecimento entre os desenvolvedores.
Quais são as desvantagens da pair programming?
Maior custo, já que duas pessoas estão trabalhando na mesma tarefa;
Possibilidade de conflitos e divergências entre os desenvolvedores, especialmente em caso de
comunicação e colaboração deficientes;
Possibilidade de desigualdade na contribuição dos desenvolvedores, se um deles dominar mais
a tarefa ou o assunto em questão.
O que é refatoração?
A refatoração é uma técnica de melhoria contínua de código que visa torná-lo mais legível,
compreensível e fácil de manter.
Ela consiste em fazer pequenas alterações no código sem mudar
seu comportamento externo, com o objetivo de eliminar código duplicado, simplificar estruturas
complexas, melhorar a modularidade e a flexibilidade do sistema.
A refatoração é uma prática
fundamental para manter a qualidade do código ao longo do tempo e evitar o acúmulo de débito
técnico.
Como é usada a refatoração na agilidade?
Na agilidade, a refatoração é uma prática recorrente, que está incorporada ao processo de
desenvolvimento de software. Deve ser realizada gradualmente, à medida que o software for
desenvolvido. A intenção dessa técnica é que os desenvolvedores realizem as correções no código
com frequência, no ritmo de sua evolução, mantendo assim a sua qualidade.
Qual é o objetivo da refatoração?
Segundo Martin (2009), “O objetivo da refatoração é melhorar o design do software
existente, tornando-o mais fácil de entender, mais eficiente, com menor acoplamento e maior coesão,
sem alterar seu comportamento externo.”
Fundamentada em técnicas e princípios de engenharia de
software, tem por objetivo aprimorar a qualidade do código fonte, evitando o acúmulo de falhas no
software.
Como a refatoração deve ser feita?
É de suma importância que a refatoração seja realizada de forma estruturada e com cautela. É
essencial programar a realização de testes para assegurar que alterações no código não acarretem
novos problemas.
Como um processo de melhoria contínua, a refatoração pode incluir a reorganização do código,
a eliminação de duplicação, a melhoria da legibilidade, a simplificação de algoritmos complexos, a
melhoria da estrutura de dados, entre outros ajustes.
Refatorações
menores e mais frequentes são menos arriscadas