amigos, no livro “Java Como Programar” 6 edição, na pagina 178 há a seguinte dica de prevenção de erros:
“Enquanto um programa estiver sob desenvolvimento, crie o objeto Random com um valor específico de semente para produzir uma sequência repetível de números aleatórios toda vez que o programa é executado. Se ocorrer um erro de lógica, corrija esse erro e teste o programa novamente com o mesmo valor de semente - isso permite reconstruir a mesma sequência de números aleatórios que causou o erro. Depois que os erros de lógica forem removidos, crie o objeto Random sem utilizar um valor de semente, fazendo com que o objeto Random gere uma nova sequência de números aleatórios toda vez que o programa é executado.”
Bom… eu gostaria de perguntar se isso é um método geral para se detectar erros de lógica. Ou seja, eu coloco no inicio do desenvolvimento do programa uma semente e gero uma sequência de numeros aleatórios. Se por acaso eu cometer um erro de lógica, essa sequencia muda? e assim eu consigo detectar o erro??
Eu realmente não entendi essa dica do livro, se alguém puder me esclarecer eu agradeceria…
o que o livro quis dizer, é para você gerar a partir do random, uma sequencia aleatória de números para efetuar os testes. Se um erro ocorrer, você utiliza a mesma ‘semente’ (a partir da semente os números aleatórios são gerados) para que os mesmos números aleatórios sejam gerados, assim vc poderá verificar se a sua correção foi eficiente.
Se o erro não mais ocorrer, troque a semente para que outros números aleatórios sejam gerados e vc efetue mais testes.
[quote=mgarcia] Se um erro ocorrer, você utiliza a mesma ‘semente’ (a partir da semente os números aleatórios são gerados) para que os mesmos números aleatórios sejam gerados, assim vc poderá verificar se a sua correção foi eficiente.
Se o erro não mais ocorrer, troque a semente para que outros números aleatórios sejam gerados e vc efetue mais testes.[/quote]
que erro?? erro na lógica do programa em si ou na geração de numeros aleatorios com a classe random???
digamos que se testássemos o seu programa com o número 5, o mesmo desse um erro de lógica…
então vc deve corrigir o erro certo? e como vc faz para ver se a sua correção deu certo?? novamente testa o programa com o valor 5! na realidade é isso q o livro disse, só que com vários números aleatórios! vc gera vários números aleatórios a partir de uma semente… se um erro lógico do seu programa ocorrer, vc deve corrigir o programa e utilizar a mesma semente para ver se o erro foi corrigido, já que se vc trocasse a semente, perderia a garantia de que o valor que deu erro fosse testado novamente