2010-04-04 5 views
0

Devrais-je valider les paramètres d'entrée sur toutes les fonctions que je crée? L'entrée n'est pas transmise par un utilisateur, mais par d'autres routines dans le cadre d'un processus automatique.Valider les paramètres d'entrée dans VB?

J'utilise la gestion des erreurs. Je ne suis pas sûr de ce que l'apport de validation pourrait faire pour moi. Si l'entrée n'est pas valide, c'est à peu près la même chose qu'une erreur, n'est-ce pas?

Répondre

1

Tout dépendra de la façon dont votre fonction est publique et de la manière dont les mauvaises entrées seront destructrices pour votre application/magasin de données.

S'il existe un couplage étroit entre le code appelant la fonction et la fonction elle-même, je pense que la validation est excessive et ne fera qu'ajouter de la complexité à votre solution. Toutefois, si votre code est, par exemple, une partie d'une bibliothèque utilisée par plus que votre code, ajoutez autant de validation que nécessaire. Vous ne voulez pas que votre code échoue/permette que quelque chose ne se passe pas parce que vous n'avez pas validé l'entrée.

Pensez aux bibliothèques/fonctions que vous utilisez déjà. Si vous leur donnez de mauvaises valeurs, comment réagissent-ils? Répondent-ils avec une erreur sur mesure (par exemple "Eléphant" n'est pas un fruit) ou une erreur interne qui est un sous-produit de votre mauvaise entrée (par exemple "Référence d'objet non définie sur une instance d'un objet")?

+0

Merci. Pardonnez-moi pour cette stupidité, mais que signifie "couplage serré"? Je le vois beaucoup. – EdOxH

+0

Dans ce cas, je veux dire que les deux fonctions fonctionnent très étroitement ensemble pour le même but commun et changer une aurait un effet négatif sur l'autre. Jetez un oeil à http://en.wikipedia.org/wiki/Coupling_(computer_science) – CResults