Para garantir que você construa e mantenha uma reputação positiva no SpecHero , é importante postar apenas soluções úteis para pedidos de ajuda.
Para ter certeza de que suas soluções são úteis, analise esta lista de verificação antes de clicar no botão grande e brilhante “Enviar como solução”.
- Obviamente, todas as especificações devem ser aprovadas e nenhum erro deve aparecer na caixa na parte inferior da tela.
- De modo geral, não mude a especificação, apenas o código. Se você tiver que alterar a especificação porque acredita que ela está errada, (é possível), coloque um comentário no topo da especificação explicando porque você a alterou.
- Escreva código suficiente para fazer a especificação passar, mas não adicione código apenas porque você acha que pode ser útil. Este é o Desenvolvimento Orientado a Testes, portanto, é realmente responsabilidade do testador conduzir a implementação. Os testadores devem levar o código para um test drive e procurar deficiências e, em seguida, escrevê-las como exemplo na especificação e enviar a especificação para trabalho posterior. Isso garante que o código seja totalmente testado e adequado à finalidade.
- Escreva um bom código claro. Mantenha-o SECO. Use nomes de variáveis significativos, siga as convenções da linguagem em que está escrito. Basicamente, escreva um código que você não odiaria depurar daqui a seis meses.
- Certifique-se de não ter literais. Em seu código que não foi mencionado na descrição da especificação. Isso é um sinal de que sua solução não é a pretendida pelo solicitante. Veja abaixo para mais informações.
A maioria dos itens acima são bem simples, mas o último ponto pode precisar de uma pequena explicação.
Dê uma olhada no código desta solução . Este é um exemplo de limo. Isso faz com que as especificações sejam aprovadas e, ao mesmo tempo, é completamente inútil para o solicitante. Observe em particular como ele contém valores literais. A descrição da especificação é:
A picture
when its height is changed
maintains its proportions
when its width is changed
maintains its proportions
Em nenhum lugar há não menciona os números 400
, 200
, 50
e 100
que aparecem como literais no código. Essa é uma grande pista de que o código não está fazendo o que o solicitante pretendia.
Agora verifique o código dessa solução útil para o mesmo problema. Observe que ele não contém literais que não foram mencionados na descrição do problema (neste caso, nenhum). Este é um bom sinal de que você está no caminho certo para fazer o que o solicitante pretendia.
Se você fez o possível para seguir as diretrizes acima, vá em frente e envie. Estamos trabalhando em um sistema de feedback agora, então esperamos que em breve você possa receber comentários construtivos e trabalhar para encontrar uma solução eficaz.
Feliz resolução.