Je préfère if not
plutôt que unless
. Existe-t-il un moyen approprié d'écrire ce genre de condition? Que pensent généralement les gens de unless
?
J'espère que ceci vous aide:
https://github.com/bbatsov/Ruby-style-guide
Je suis personnellement d'accord avec ce qui y est écrit en choisissant unless something
plus de if !something
pour les modificateurs et les simples et quand il y a else
préférez if
.
J'utilise unless
à chaque fois, sauf lorsqu'il y a une clause else
.
Je vais donc utiliser
unless blah_blah
...
end
mais s'il y a une condition else, j'utiliserai if not
(ou if !
)
if !blah_blah
...
else
...
end
Après avoir utilisé if !
pendant des années et des années et des années, il m'a fallu du temps pour m'habituer à unless
. De nos jours, je le préfère dans tous les cas où le lire à haute voix semble naturel.
Je suis également un fan de l'utilisation d'un unless
increment_by_one unless max_value_reached
J'utilise ces noms de méthode/variable comme exemple de lisibilité - la structure du code devrait fondamentalement suivre ce modèle, à mon avis.
Dans un sens plus large, la structure devrait être: take_action unless exception_applies
if not condition
est rarement utilisé. Ruby (venant généralement d'autres langues) ont tendance à préférer l'utilisation if !condition
.
De l'autre côté, à moins qu'il ne soit largement utilisé dans le cas où il y a une seule condition et si cela semble lisible.
Voir aussi logique avec Ruby sauf) pour d'autres suggestions sur le style de codage sauf.