Skip to content

Instantly share code, notes, and snippets.

@tdimnet
Last active November 21, 2022 13:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save tdimnet/d334cc28cc3e5e75a437462db2b2df39 to your computer and use it in GitHub Desktop.
Save tdimnet/d334cc28cc3e5e75a437462db2b2df39 to your computer and use it in GitHub Desktop.
class OldCalculator {
constructor() {
this.operations = function(number1, number2, operation) {
switch (operation) {
case 'add':
return number1 + number2
case 'sub':
return number1 - number2
default:
return NaN
}
}
}
}
class NewCalculator {
static add(number1, number2) {
return number1 + number2
}
static sub(number1, number2) {
return number1 - number2
}
}
class AdaptedCalculator {
constructor() {
this.operations = function(number1, number2, operation) {
switch (operation) {
case 'add':
return NewCalculator.add(number1, number2)
case 'sub':
return NewCalculator.sub(number1, number2)
default:
return NaN
}
}
}
}
// Old Calc
const Calculator = new OldCalculator()
console.log(Calculator.operations(10, 5, 'add'))
// New Calc
console.log(NewCalculator.add(10, 5))
console.log(NewCalculator.sub(10, 5))
// Adapted Calc
const AdaptCalculator = new AdaptedCalculator()
console.log(AdaptCalculator.operations(10, 5, 'add'))
@abguven
Copy link

abguven commented Aug 29, 2022

Bonjour
J'aimerai déjà vous remercier pour ce cours magnifique. Vous êtes l'un de mes profs préféré sur OpenClassrooms.
J'aimerai vous poser une question concernant l'utilisation de case. Dans la vidéo du cours vous n'avez pas utilisé des break dans la structure "case" mais ici vous l'utilisez. Quel est la meilleure pratique? Faut-il l'utiliser même après le return ou pas?
Cordialement.

@tdimnet
Copy link
Author

tdimnet commented Sep 6, 2022

Bonjour Abdulkadir,

merci pour ton message, ça me fait vraiment plaisir de lire ce type de retour. Je suis en train d'en préparer des nouveaux que je vais poster en accès libre sur Youtube. Si ça t'intéresse, je te préviendrais dès qu'ils sont sortis 😀 .

En fait, c'est une petite erreur de ma part : le mot clé return permet de stopper l'execution d'une fonction ou d'une boucle. Autrement dit, je peux me passer du break dans l'exemple ci-dessus puisque j'utilise return auparavant. Je vais mettre à jour le gist pour supprimer le break.

Merci pour ton oeil attentif ^^.
Thomas.

@abguven
Copy link

abguven commented Sep 6, 2022

Merci beaucoup pour votre réponse assez claire.
Je serai certainement intéressé par vos cours sur youtube. Merci de m'envoyer un lien de la chaine quand ça serait prête.
Excellente journée.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment