Mémo ruby – Les variables


Voici un aide mémoire pour ce qui la syntaxe et l’utilisation ainsi que les différente variables que propose ruby.

 

 

 

Les variables

#////////////////////////////////////////////////////////////////////
					Les variables
#////////////////////////////////////////////////////////////////////					
#Les variables peuvent contenir plusieurs type de donnée : 
#Les valeurs numériques, Une chaine de caractère, un booleen
#(true, false) ou bien être vide est donc contenir la valeur
#nil.
#////////////////////////////////////////////////////////////////////
#Variable locale
#/////
#Une variable locale doit être nommée avec pour premier caractère 
#soit une minuscule, soit un caractère souligné (underscore).

myVar = true
_myVar = 18
myVar2 = nil

#////////////////////////////////////////////////////////////////////
#Variable globale
#/////
#Comme son nom l'indique, une variable globale est accessible dans 
#tout le programme, elle doit être préfixée du signe $

$myVar = "Hello world"
$MAVARIABLE = 55
$_myVar = "18"

#////////////////////////////////////////////////////////////////////
#Variable d'instance
#/////
#Une variable d'instance est une variable qui n'est accessible qu'après 
#l'instanciation d'un objet. La variable sera alors accessible en 
#utilisant cette syntaxe : <Nom de l'instance>.<Nom de la variable>. 
#Son nom doit être préfixé avec le caractère arobase (@)

class A
 attr_reader :variableInstance
 def initialize
   @variableInstance = 42
 end

 def to_s
   return @variableInstance.to_s #Correspond a self.variableInstance.to_s
 end
end

puts variableInstance       #      => Erreur
puts A::variableInstance    #      => Erreur
test=A.new
puts test.variableInstance  #      => 42
puts test.to_s              #      => 42


#////////////////////////////////////////////////////////////////////
#Variable de classe
#/////
#Une variable de classe est commune à toutes les instances d'une même classe. 
#Son nom est préfixé par deux arobases (@@).

class A
 @@variabeDeClasse = 0

 def initialize
   @@variableDeClasse += 1
   @variableDeClasse = 5  #Ceci n'est pas une variable de classe, c'est juste pour l'exemple
 end

 def nombreInstance
   return @@variableDeClasse
 end

 def variableDeClasse
   return @variableDeClasse
 end
end

test1 = A.new
puts test1.nombreInstance    #   => 1
puts test1.variableDeClasse  #   => 5
test2 = A.new
puts test1.nombreInstance    #   => 2
puts test1.variableDeClasse  #   => 5


#////////////////////////////////////////////////////////////////////
#Contante
#/////
#Une constante contient une donnée qui ne pourra jamais changer durant
#l'éxécution du programme, son nom doit obligatoirement débuter par 
#une majuscule et il est préférable d'utiliser uniquement les majuscules
#afin de les différencier des noms de classe.

MACONSTANTE = 29
CONST = true
LANGUAGE = "Ruby"

Laissez un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *