Journal du Net Développeur >  Outils >  Ruby : les spécificités du langage

Ruby > 1. Lisibilité et ponctuation

Précédente 2. Itération et symboles 
[1] : premier exemple canonique :
  1. 5.times { print "Odelay!" }
[2] : second exemple canonique :
  1. exit unless "restaurant".include? "aura"
[3] : exemple de méthode de test
  1. // renvoi true
  2. 5.integer?
  3.  
  4. // renvoi false
  5. 2.5.integer?
  6.  
  7. // renvoi true
  8. 2.5.to_i.integer?
[4] : exemple de méthode modifiante
  1. // créé un tableau de 11 valeurs
  2. a = [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
  3.  
  4. // trie le tableau
  5. a.sort!
  6.  
  7. // imprime le contenu de a : 0123456789
  8. print a

Lisibilité et ponctuation
Le langage Ruby se targue de pouvoir être lu de manière littérale (en anglais) dans de nombreux cas. Pour preuve, les deux exemples canoniques [1] et [2].

Le premier se lit Five times print "Odelay!", ce qui peut se traduire Cinq fois écrire "Odelay!", et correspond effectivement au comportement du code (imprimer cinq fois la chaîne "Odelay!").

Le second, qui se lit tel quel, se traduit par sortir sauf si "restaurant" contient "aura", et correspond ici encore au comportement. Ces exemples donnent une manière plus lisible d'écrire du code qui prendrait une boucle for() ou un bloc if() dans un autre langage connu. Pour ce faire, Ruby introduit quelques structures originales, comme le unless que nous avions déjà abordé.

On notera le point d'interrogation, qui est partie intégrante de la méthode utilisée. En effet, Ruby fait usage de la ponctuation pour améliorer la lisibilité du code. Ainsi, les méthodes renvoyant des booléens prennent un point d'interrogation [3].

De la même manière, le point d'exclamation à la fin d'une méthode indique que celle-ci modifie irrémédiablement la variable à laquelle elle s'applique, ou plus généralement qu'elle a des effets de bord. Cela sert simplement à mieux se rendre compte du fonctionnement du code quand on le lit [4].

Précédente Retour au sommaire page suivante 
Introduction | 1 | 2 | 3
 
|
Haut de page
Nos autres sites Société | Mentions légales | Contacts | Publicité | PA Emploi | Presse | Recrutement | Tous nos sites | Données personnelles
© Benchmark Group, 69/71 avenue Pierre Grenier. 92517 Boulogne Billancourt Cedex