Guide du débutant sur le langage de programmation Ruby

Ruby est unique parmi les langages de script orientés objet. Dans un sens, c'est un langage puriste pour ceux qui aiment les langages orientés objet. Tout, sans exception, est automatiquement un objet, alors que dans d'autres langages de programmation, ce n'est pas vrai.

Qu'est-ce qu'un objet? Eh bien, dans un sens, vous pouvez y penser en termes de construction d'une voiture. Si vous avez un plan pour cela, alors un objet est ce qui est construit à partir de ce plan. Il contient tous les attributs de l'objet (c'est-à-dire la marque, le modèle, la couleur) et les actions qu'il peut effectuer. Mais, même en tant que langage purement orienté objet, Ruby ne sacrifie aucune facilité d'utilisation ou flexibilité en omettant des fonctionnalités qui ne sont pas expressément liées à la programmation orientée objet.

Concevoir Ruby

L'architecte de Ruby, Yukihiro Matsumoto (connu simplement sous le nom de "Matz" sur le Web), a conçu le langage pour qu'il soit assez simple à utiliser pour les programmeurs débutants, et suffisamment puissant pour que les programmeurs expérimentés disposent de tous les outils dont ils auraient besoin. Cela semble contradictoire, mais cette dichotomie est due à la conception orientée objet pure de Ruby et à la sélection minutieuse de fonctionnalités de Matz dans d'autres langages tels que Perl, Smalltalk et Lisp..

Il existe des bibliothèques pour créer tous les types d'applications avec Ruby: analyseurs XML, liaisons GUI, protocoles de mise en réseau, bibliothèques de jeux et plus encore. Les programmeurs Ruby ont également accès au puissant programme RubyGems. Comparable au CPAN de Perl, RubyGems facilite l'importation de bibliothèques d'autres programmeurs dans vos propres programmes.

Qu'est-ce que Ruby ne pas?

Comme tout langage de programmation, Ruby a ses inconvénients. Ce n'est pas un langage de programmation haute performance. À cet égard, la conception de machine virtuelle de Python présente un énorme avantage. De plus, si vous n'êtes pas fan de la méthodologie orientée objet, Ruby n'est pas pour vous.

Bien que Ruby possède certaines fonctionnalités qui ne relèvent pas du domaine des langages orientés objet, il n'est pas possible de créer un programme Ruby non trivial sans utiliser les fonctionnalités orientées objet. Ruby ne fonctionne pas toujours aussi bien que d'autres langages de script similaires dans les tâches informatiques brutes. Cela étant dit, les futures versions traiteront ces problèmes et des implémentations alternatives, telles que JRuby, sont disponibles comme solution de contournement pour ces problèmes..

Comment Ruby est-il utilisé?

Ruby est utilisé dans des applications de langage de script typiques telles que le traitement de texte et les programmes "glue" ou middleware. Il convient aux petites tâches de script ad hoc qui, dans le passé, pouvaient avoir été résolues avec Perl. Écrire de petits programmes avec Ruby est aussi simple que d'importer les modules dont vous avez besoin et d'écrire un programme de type "séquence d'événements" presque BASIC.

Comme Perl, Ruby a également des expressions régulières de première classe, ce qui rend les scripts de traitement de texte un jeu d'enfant à écrire. La syntaxe flexible aide également dans les petits scripts. Avec certains langages orientés objet, vous pouvez vous enliser avec du code bavard et volumineux, mais Ruby vous laisse libre de vous soucier simplement de votre script.

Ruby convient également aux grands systèmes logiciels. Son application la plus réussie est dans le framework Web Ruby on Rails, un logiciel qui a cinq sous-systèmes majeurs, de nombreuses pièces mineures et une pléthore de scripts de support, de backends de base de données et de bibliothèques.

Pour faciliter la création de systèmes plus grands, Ruby propose plusieurs couches de compartimentation, y compris la classe et le module. Son manque de fonctionnalités superflues permet aux programmeurs d'écrire et d'utiliser de gros systèmes logiciels sans surprise.

Quelles compétences seraient utiles pour apprendre Ruby?

  • Une solide compréhension des concepts orientés objet. Ruby est un langage orienté objet et les fonctionnalités orientées objet sont utilisées partout. Sans cette compétence critique, vous aurez du mal en tant que programmeur Ruby.
  • Un peu de connaissances en programmation fonctionnelle. C'est un plus car Ruby utilise largement le bloc ou la «fermeture». Cependant, ne pas avoir cette capacité n'est pas insurmontable. La création de blocs est une fonctionnalité qui peut être apprise assez facilement lors de l'apprentissage de Ruby.
  • Un peu de savoir-faire en navigation. La principale façon d'exécuter un script Ruby est à partir de la ligne de commande. Savoir comment naviguer dans les répertoires, exécuter des scripts et rediriger les entrées et les sorties sont des compétences essentielles pour les programmeurs Ruby.

Applications et outils nécessaires pour Ruby

  • L'interprète Ruby
  • Un éditeur de texte tel que Notepad ++, Scite ou Vim. Les traitements de texte tels que Wordpad ou Microsoft Word ne conviennent pas.
  • Accès en ligne de commande. Bien que les détails de cela diffèrent d'une plateforme à l'autre, Linux, Windows et OSX ont tous cela disponible sans aucun téléchargement supplémentaire ou installation de logiciel.