Retour au cours

introduction à ruby : un langage pour le bonheur des développeurs

Objectifs

  • Comprendre ce qui caractérise le langage de programmation Ruby.
  • Découvrir l’histoire et la philosophie de Ruby, centrée sur le plaisir du développeur.
  • Savoir pourquoi Ruby est un excellent choix pour le développement web, le scripting et l’outillage DevOps.

Qu’est-ce que Ruby ?

Ruby est un langage de programmation interprété, dynamique et purement orienté objet, créé au milieu des années 90 par le développeur japonais Yukihiro “Matz” Matsumoto.

  • Interprété : Le code est exécuté ligne par ligne par un interpréteur, sans étape de compilation préalable.
  • Dynamique : Les types des variables ne sont pas fixés à l’avance, ce qui offre une grande flexibilité.
  • Purement Orienté Objet : C’est la caractéristique la plus fondamentale. En Ruby, tout est un objet, y compris les nombres, les chaînes de caractères et même true ou false. Chaque objet peut avoir ses propres méthodes.

La philosophie : Le bonheur du programmeur

La devise de Matz lors de la création de Ruby était de concevoir un langage qui le rendrait lui-même productif et heureux. Cette philosophie, souvent résumée par l’acronyme MINASWAN (“Matz Is Nice And So We Are Nice”), met l’accent sur :

  • La simplicité et l’élégance.
  • Une syntaxe expressive et naturelle, proche de la langue anglaise.
  • Le principe du moindre étonnement : le langage doit se comporter comme on s’y attend intuitivement.

Ruby est conçu pour les humains d’abord, pour la machine ensuite.

# La syntaxe est conçue pour être lisible.
# On peut écrire une boucle de 5 tours de manière très naturelle.
5.times do
  puts "Ruby est élégant !"
end

# En Ruby, tout est un objet, même un nombre.
# On peut donc appeler une méthode (.times) sur l'objet 5.

Pourquoi Ruby est-il populaire ?

La popularité de Ruby a explosé dans les années 2000 avec la sortie de Ruby on Rails, un framework de développement web révolutionnaire. Rails a popularisé des concepts comme “Convention over Configuration”, qui permettent de construire des applications complexes très rapidement en suivant des conventions établies.

Aujourd’hui, Ruby est utilisé pour :

  • Développement web : Avec des frameworks comme Ruby on Rails ou le micro-framework Sinatra.
  • Scripting : C’est une excellente alternative à Python ou Bash pour écrire des scripts d’automatisation.
  • Outils DevOps : Des outils très populaires comme Chef, Vagrant et Homebrew (le gestionnaire de paquets sur macOS) sont écrits en Ruby.

Exemples de code

# Afficher un message est simple
puts "Bonjour, Ruby!"

# Les variables n'ont pas besoin de déclaration de type.
# L'interpolation de chaîne avec #{} est très pratique.
nom = "Alice"
puts "Bonjour, #{nom} !"

# Définir une méthode (une fonction) est simple.
def carre(x)
  x * x # En Ruby, la dernière expression évaluée est retournée automatiquement.
end

puts "Le carré de 5 est #{carre(5)}"

Bonnes pratiques pour débuter

  • Adoptez la “Ruby Way” : cherchez toujours la manière la plus claire et la plus lisible d’écrire votre code.
  • Utilisez des noms de variables et de méthodes en snake_case (minuscules et underscores). C’est la convention standard.

Exercices

  1. Réflexion sur les objets :

    • La phrase “en Ruby, tout est un objet” est fondamentale. Que pourrait signifier, selon vous, le fait d’appeler une méthode sur un nombre, comme dans 5.times ?
  2. Convention vs. Configuration :

    • Faites une recherche rapide sur le principe “Convention over Configuration”. En quoi cela peut-il accélérer le développement d’une application ?
  3. Installation :

    • Le but de la prochaine leçon sera d’installer Ruby sur votre machine. Vous pouvez déjà vous renseigner sur les outils comme rbenv ou rvm, qui permettent de gérer plusieurs versions de Ruby.