LeFauve42
Messages postés239Date d'inscriptionvendredi 20 octobre 2006StatutMembreDernière intervention20 avril 2009
-
8 mars 2010 à 12:00
LeFauve42
Messages postés239Date d'inscriptionvendredi 20 octobre 2006StatutMembreDernière intervention20 avril 2009
-
8 mars 2010 à 12:00
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
LeFauve42
Messages postés239Date d'inscriptionvendredi 20 octobre 2006StatutMembreDernière intervention20 avril 2009 8 mars 2010 à 12:00
Salut,
Effectivement ca peut etre pratique, mais :
- Tu utilises la surcharge de methodes, et ce n'est pas possible avec JavaScript. Si tu veux vraiment que ta fonction soit utilisable sans argument, compare les a 'undefined' (avec === ou !== si tu ne veux pas de problemes quand 0 est passe).
- Ta gestion de 'limit' dans nextInt est desastreuse. En effet, si tu n'as vraiment pas de chance, ton programme peux rester planter ad eternam (c'est rare, mais ca peut arriver). utilise simplement l'operateur modulo pour avoir le meme resultat dans un temps fini (et constant, ce qui peut etre necessaire pour un jeux par exemple).
- Ton nextBoolean est n'est pas optimise du tout (ca pourrait etre "return Math.random()<.5;").
- Meme chose pour ton nextLetter :
- Pourquoi rappeler ta fonction nextInt alors qu'un simple "Math.floor(Math.random()*26)" ferait l'affaire ?
- Ta chaine/tableau pourrait etre cree dans ta classe, plutot que d'etre realouee a chaque appel.
8 mars 2010 à 12:00
Effectivement ca peut etre pratique, mais :
- Tu utilises la surcharge de methodes, et ce n'est pas possible avec JavaScript. Si tu veux vraiment que ta fonction soit utilisable sans argument, compare les a 'undefined' (avec === ou !== si tu ne veux pas de problemes quand 0 est passe).
- Ta gestion de 'limit' dans nextInt est desastreuse. En effet, si tu n'as vraiment pas de chance, ton programme peux rester planter ad eternam (c'est rare, mais ca peut arriver). utilise simplement l'operateur modulo pour avoir le meme resultat dans un temps fini (et constant, ce qui peut etre necessaire pour un jeux par exemple).
- Ton nextBoolean est n'est pas optimise du tout (ca pourrait etre "return Math.random()<.5;").
- Meme chose pour ton nextLetter :
- Pourquoi rappeler ta fonction nextInt alors qu'un simple "Math.floor(Math.random()*26)" ferait l'affaire ?
- Ta chaine/tableau pourrait etre cree dans ta classe, plutot que d'etre realouee a chaque appel.
Eric