Ce tutoriel est en travail. J'y note les éléments de base du langage au fur et à mesure que je les découvre et expérimente

Bases du langage

La syntaxe de Ruby est assez souple:

  • Vous n'avez pas besoin de terminer une ligne par un point-virgule, bien que cela ne pose aucun problème
  • l'utilisation des parenthèses pour l'appel de méthode n'est pas nécessaire
  • Vous pouvez ne pas délimiter vos paramètres de méthode par des parenthèses, aussi bien dans la déclaration de la méthode que dans son appel. Toutefois, pour des raisons de lisibilité, je ne peux que vous conseiller d'utiliser les parenthèses.

Variables

Ruby utilise une convention de nommage pour reconnaître l'utilisation d'un nom :

mot commençant par une minuscule ou un soulignementNom de variable ou de méthode
mot commençant par une majusculeNom de classe, module ou constante
mot préfixé par $variable globale
mot préfixé par @variable d'instance
mot préfixé par @@variable de classe

Contrairement à Perl, il n'y a pas de notation particulière pour indiquer qu'une variable va contenir un tableau, ou un tableau associatif.
Pour créer un tableau, vous pouvez soit affecter une ou plusieurs valeurs à la variable en utilisant les délimiteurs [], soit instancier un tableau avec Array.new. Exemples :

myFirstArray = ["salut", "mon", "ami"]
mySecondArray = []
myThirdArray = Array.new

Le tableau associatif utilise des accolades à la place de crochets.

Définition des classes

  • Le nom d'une classe doit être une constante, donc doit commencer par une majuscule.
  • La valeur de retour d'une méthode est renvoyé par le mot clé @@return@@, ou est simplement la dernière expression évaluée dans la méthode. Exemple :
def disBonjour(nom)
  "salut, #{nom}"
end

Reflexion

–> voir Reflection, ObjectSpace, and Distributed Ruby dans Programming Ruby.

Une des grandes souplesse du script par rapport au langages compilés est la possibilité à l'exécution d'obtenir des informations sur la structure du code. Cette possibilité est appelée la réflexion, c'est-à-dire la possibilité de se voir soi-même. La plupart des langages de script modernes (ainsi de des langages pseudo-compilés comme Java ou les langages .NET) ont de telles fonctionnalités. Ruby permet une réflexion poussée (introspection et intercession) Que pouvons-nous faire ? Afficher la liste des variables d'un certain type dans le scope :

ObjectSpace.each_object(String) {|x| puts x }

connaître les méthodes et l'état d'une classe :

s = 'salut'
puts s.methods
puts s.protected_methods
puts s.private_methods
puts s.public_methods
puts s.instance_variables
puts s.constants
 
programmation/ruby/tutorial.txt · Dernière modification: 2006/03/25 23:55 (édition externe)