Problème de blindage de code
babyboystwo
Messages postés
9
Date d'inscription
Statut
Membre
Dernière intervention
-
babyboystwo -
babyboystwo -
Bonjour,
Il vous est indiqué que la fonction ci-dessous est susceptible de provoquer des erreurs lors de son utilisation dans le programme. Après avoir lu le commentaire décrivant le comportement attendu, quelles modifications recommanderiez-vous pour lui faire respecter son contrat et la protéger ?
// Retourne une valeur numérique valide (diff de NaN, +INF, -INF) en fonction de
// - la date "parDateInCal" fournie en entrée
// - la valeur "parNbValue" fournie en entrée
// - la valeur du 1er élément présent dans la liste fournie en entrée
// Si un des paramètres fourni est invalide, la fonction doit retourner null
public Double retValrEnFctDeDate(Calendar parDateInCal, Double parNbValue, final List parList) {
if ((parDateInCal.get(Calendar.MONTH) == Calendar.APRIL) && (parDateInCal.get(Calendar.DAY_OF_MONTH) == 1)) {
parDateInCal = getNewCalendar();
}
if (parDateInCal.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) {
return Double.valueOf((Double)parList.get(0) / parNbValue);
} else {
return Double.valueOf(2.0 * (Double)parList.get(0) / parNbValue);
}
}
private Calendar getNewCalendar() { ... } // Fonction qui retourne une nouvelle date
Il vous est indiqué que la fonction ci-dessous est susceptible de provoquer des erreurs lors de son utilisation dans le programme. Après avoir lu le commentaire décrivant le comportement attendu, quelles modifications recommanderiez-vous pour lui faire respecter son contrat et la protéger ?
// Retourne une valeur numérique valide (diff de NaN, +INF, -INF) en fonction de
// - la date "parDateInCal" fournie en entrée
// - la valeur "parNbValue" fournie en entrée
// - la valeur du 1er élément présent dans la liste fournie en entrée
// Si un des paramètres fourni est invalide, la fonction doit retourner null
public Double retValrEnFctDeDate(Calendar parDateInCal, Double parNbValue, final List parList) {
if ((parDateInCal.get(Calendar.MONTH) == Calendar.APRIL) && (parDateInCal.get(Calendar.DAY_OF_MONTH) == 1)) {
parDateInCal = getNewCalendar();
}
if (parDateInCal.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) {
return Double.valueOf((Double)parList.get(0) / parNbValue);
} else {
return Double.valueOf(2.0 * (Double)parList.get(0) / parNbValue);
}
}
private Calendar getNewCalendar() { ... } // Fonction qui retourne une nouvelle date
A voir également:
- Problème de blindage de code
- Code ascii - Guide
- Code de déverrouillage oublié - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
- Code de triche gta 4 - Guide