Na XP Extreme Programming, a prática usada para escrever os ...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a alternativa C - test-first.
Vamos entender o contexto dessa questão:
No contexto da XP (Extreme Programming), que é uma metodologia ágil de desenvolvimento de software, existem diversas práticas que ajudam a melhorar a qualidade do código e a produtividade da equipe. Uma dessas práticas é o "Test-First", também conhecido como Test-Driven Development (TDD). Essa prática consiste em escrever os testes para uma nova funcionalidade antes de implementar a funcionalidade em si.
Ou seja, ao adotar o Test-First, o desenvolvedor primeiro escreve um teste que define uma pequena melhoria ou nova funcionalidade, depois escreve o código mínimo necessário para passar naquele teste e, por último, refatora o código para atender aos padrões de qualidade.
Agora, vamos analisar as alternativas incorretas:
A - refactoring
Refactoring é uma prática de melhorar o código existente sem alterar seu comportamento externo. Ela é frequentemente usada após o Test-First, mas não antes da implementação da funcionalidade.
B - continuous integration
Continuous Integration (CI) é uma prática que envolve integrar o código de todos os desenvolvedores em um repositório central várias vezes ao dia. Isso ajuda a detectar problemas cedo, mas não está diretamente relacionado ao processo de escrever testes antes da implementação.
D - integração contínua
Essa alternativa repete a ideia da alternativa B, mas em português. Novamente, integração contínua se refere à prática de frequentemente integrar código ao repositório principal, não ao processo de escrever testes antes da implementação.
E - small releases
Small Releases referem-se à prática de fazer lançamentos frequentes com pequenas melhorias, o que ajuda a obter feedback constante dos usuários. Embora seja uma prática importante na XP, ela não se relaciona com a escrita de testes antes da funcionalidade.
Portanto, a prática usada para escrever os testes para uma nova funcionalidade antes que a funcionalidade em si seja implementada é corretamente denominada test-first, conforme indicado na alternativa C.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Gabarito: C
Uma das praticas do XP é o Desenvolvimento Orientado a Testes.
A criação de testes leva em conta não só o tempo ganho com a criação dos mesmos antes da codificação, mas conhecer previamente as possíveis falhas do seu sistema.
Extreme Programming (XP) é uma metodologia ágil de desenvolvimento de software que se destaca por diversas características específicas, visando melhorar a qualidade do software e a satisfação do cliente. Abaixo estão algumas das principais características da XP:
1. **Comunicação intensiva**: XP promove uma comunicação contínua e eficaz entre todos os membros da equipe de desenvolvimento, incluindo desenvolvedores, clientes e gerentes. Isso é facilitado através de práticas como programação em par (pair programming) e reuniões frequentes.
2. **Feedback rápido**: A metodologia enfatiza a obtenção de feedback rápido sobre o progresso do desenvolvimento. Isso é alcançado através de integração contínua, testes automatizados e revisões de código frequentes.
3. **Desenvolvimento iterativo e incremental**: XP adota ciclos curtos de desenvolvimento, geralmente de uma a três semanas, nos quais funcionalidades são implementadas de forma iterativa e incrementada. Cada iteração entrega valor adicional ao cliente.
4. **Test-Driven Development (TDD)**: TDD é uma prática central na XP, onde testes automatizados são escritos antes da implementação do código. Isso garante que o código produzido atenda aos requisitos especificados pelos testes desde o início.
5. **Programação em par (Pair Programming)**: Esta prática envolve dois programadores trabalhando juntos em um único computador. Um deles escreve o código enquanto o outro revisa cada linha de código conforme é escrita. Isso promove melhores soluções de design, código de maior qualidade e transferência de conhecimento entre os membros da equipe.
6. **Padrões de codificação**: XP promove o uso de padrões de codificação e práticas de refatoração para melhorar a legibilidade, manutenibilidade e qualidade do código.
7. **Design simples**: A metodologia valoriza a simplicidade no design de software. Ela encoraja os desenvolvedores a implementarem apenas o que é necessário no momento, evitando previsões excessivas e aumentando a flexibilidade para mudanças futuras.
8. **Cliente integrado na equipe**: Um representante do cliente (ou cliente real) trabalha diretamente com a equipe de desenvolvimento. Isso ajuda a garantir que o produto atenda às expectativas do cliente e permite ajustes rápidos com base no feedback.
9. **Melhoria contínua**: XP promove a reflexão e a melhoria contínua através de retrospectivas regulares. As equipes revisam o processo e as práticas após cada iteração para identificar áreas de melhoria e ajustar suas abordagens de desenvolvimento.
Essas características fazem da Extreme Programming uma metodologia ágil popular para desenvolvimento de software, especialmente em projetos que requerem adaptação rápida às mudanças de requisitos e alta qualidade do produto final.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo