Je recrute

Je cherche un job

Les frameworks Ruby

Ruby est né de la volonté de s'émanciper du langage machine. Il propose donc un code facile à lire pour l'humain qui se démarque par une syntaxe élégante et épurée. Il s'agit d'un langage de programmation convenant à de nombreux usages différents. Il est toutefois particulièrement apprécié pour les développements web, notamment grâce à un écosystème très complet. Ruby on Rails est certainement le plus connu et utilisé des frameworks faisant de Ruby un langage incontournable du web.

Histoire de Ruby

Ruby doit sa création à un développeur japonais du nom de Yukuhiro Matsumoto. En 1995, celui que la communauté surnomme généralement Matz crée donc Ruby. La volonté sous-jacente est de créer un langage de programmation qu'un humain puisse le lire et l'écrire facilement. Ruby peut donc être qualifié de « vieux » langage de programmation. Il a su évoluer au fil des années et est mis-à-jour régulièrement. Ruby est par conséquent un langage stable et pérenne.

Côté distribution, Ruby a la particularité de disposer de sa propre licence, simplement appelée licence Ruby. Cette licence libre contient une clause de double licence qui lui permet d'être associée à la licence publique générale GNU (GPL GNU en anglais). Le langage est donc distribué sous double licence, toutes deux libres.

Ce qui démarque Ruby

Ruby est un langage de programmation orienté objet interprété. En Ruby, tous les éléments du langage sont des objets. Il ne repose ainsi pas sur un système de fonctions, on parle plutôt dans ce cas de méthodes. Cela signifie également qu'il a besoin d'un interpréteur pour être exécuté.

Comme déjà mentionné, Ruby se démarque par une syntaxe simple. On se débarrasse ainsi des parenthèses et accolades que l'on retrouve en nombre dans d'autres langages de programmation comme Java, PHP ou C. On se rapproche par contre d'avantage de la syntaxe de Python. Cela se traduit par une compréhension plus rapide du code, mais aussi une programmation accélérée.

Dernière spécificité importante, Ruby n'est pas un langage spécifique au web ou un autre secteur. Il est au contraire un langage qui peut servir à tous types de développement. La polyvalence est donc l'un de ses grands avantages. Il peut aussi bien être utilisé pour écrire des scripts côté serveur, des applications web (grâce à ses frameworks dédiés), gérer les logs sur le serveur et même créer des applications mobiles (iOS, Android).

Écosystème Ruby

N'étant pas un langage dédié à un type de développement en particulier, Ruby s'accompagne d'un écosystème riche permettant de lui ajouter des fonctionnalités plus spécifiques. Selon le type de développement prévu, il s'avère ainsi utile d'avoir recours à des bibliothèques, en anglais les libraries, ou frameworks additionnels.

Ruby on Rails

Ruby on Rails est un framework Ruby utilisant le modèle MVC (Modèle-vue-contrôleur). Très populaire et complet, il est aussi l'un des frameworks les plus anciens puisque sa première sortie remonte à 2005. La richesse de ses fonctionnalités, sa stabilité et la pérennité de son code en font une architecture de travail particulièrement efficace pour les projets ambitieux et donc le développement d'applications web nécessitant de nombreuses fonctionnalités.

La taille et la renommée des entreprises l'utilisant illustre la confiance que l'on peut avoir en Ruby on Rails. On retrouve ainsi Airbnb, Bloomberg, SlideShare ou la communauté réservée aux photographes 500px parmi les entreprises l'utilisant.

Grape

Grape a tout d'abord été développé pour les besoins de l'agence web Intridea. Devenant plus complet et mature avec les années, il a été intégré à la communauté Ruby en 2015. Grape est désormais un micro-framework libre destiné à développer rapidement des API REST (pour Representational State Transfer) en Ruby. Grape est ainsi un excellent outil pour développer des architectures logicielles permettant la centralisation de services partagés. Il facilite donc l'échange d'informations entre applications.

Grape est notamment utilisé par GitLab, la plateforme dédiée à l'art Artsy ou l'entreprise sociale Devex.

Hanami

Hanami est un micro-framework qui s'est dans un premier temps appelé Lotus. Relativement jeune au milieu des principaux frameworks Ruby (il est apparu au milieu des années 2010), il est similaire à Ruby on Rails de par son utilisation du modèle MVC. Il se démarque toutefois en axant ses efforts sur la performance. Il apparait donc comme un framework léger, rapide et utilisant moins de mémoire que la plupart des autres frameworks Ruby.

Le framework Hanami a su, en quelques années, conquérir bon nombre de petites et moyennes entreprises. Il fait ainsi parti des outils de développement utilisés par la plateforme de mise en relation de freelancers Freework, l'agence web Marozed ou l'entreprise spécialisée dans les équipements de protection PPE Analytics.

Sinatra

Sinatra est un framework qui a vu le jour en 2007. Il s'est démarqué dans l'écosystème Ruby en proposant un framework à la fois populaire et différent de l'approche proposée par Ruby on Rails. Sinatra impose peu de code spécifique et se prend ainsi très rapidement en main par les développeurs habitués à coder en Ruby. Rapide également par ses performances, il est tout aussi léger et permet le développement d'applications complètes en un ou peu de fichiers.

Le réseau social de Microsoft Yammer, la BBC ou encore Apple comptent parmi les entreprises qui utilisent Sinatra pour certains de leurs sites Internet ou applications web.

6 autres articles en lien avec cette page :