En Ruby, toute déclaration renvoie une valeur

Admettons que vous écriviez un jeu. Vous voulez afficher un message, suivant que le joueur ai gagné ou perdu. Voici un script qui fait ça :


win = true

if win
  message = "Félicitation, vous avez gagné !"
else
  message = "Vous avez perdu..."
end

puts message

Ce genre de code est très courant. Il n’émouvra pas ceux qui ont l’habitude des langages dynamiques. Par contre, il fera peut-être tiquer les développeurs qui viennent d’un langage typé statiquement, comme Java, du fait que message n’est pas initialisé à une valeur connue avant le passage dans le if/else.

Quand on dit qu’en Ruby, toute déclaration renvoie une valeur, il faut lire : En Ruby, toute déclaration renvoie une valeur. Comme if est une déclaration, il y a de quoi contenter tout le monde:


win = true

message = if win
  "Félicitation, vous avez gagné !"
else
  "Vous avez perdu..."
end

puts message
Publicités

,

  1. Poster un commentaire

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :