Ruby On Rails




Au travers de cet article, je ne prétends aucunement vous expliquer l'entièreté des solutions que peut offrir Ruby On Rails. N'ayant qu'une semaine et demi "d'expérience", je vous fais la présentation de mes connaissances.

Présentation: 
Ruby On Rails (ROR) est un framework libre écrit en Ruby. Il est étroitement lié à la méthode de projet Agile, puisque son créateur, David Heinemeier l’a extrait du projet Basecamp, qui est une plateforme de gestion de projet basée sur cette méthode. La première version stable de Ruby On Rails est sortie en décembre 2005. Il a également été un précurseur dans la création des différents framework du web.
Aujourd’hui, nous en sommes à la cinquième version de ROR et il est utilisé par de nombreuses grandes entreprises comme Twitter ou Airbnb par exemple.

C’est un framework qui permet la création d'applications web rapidement et simplement avec un minimum d’écriture de code.

Cependant, cette force peut également être une faiblessse pour les débutants. En effet, le fait de ne pas écrire beaucoup peut donner l’impression de ne pas maîtriser ce que l’on fait et de s’y perdre assez facilement.

Le modèle MVC:
De plus, il utilise le motif de conception MVC (Modèle – Vue – Contrôleur). C’est un motif qui est très utilisé pour les applications web et reposent donc sur trois modules qui forment son nom.

Premièrement, les modèles qui contiennent les classes assurant la gestion des données. Puis, les vues vont servir à afficher les informations à l’utilisateur. Il s’agit en général d’une combinaison entre du HTML et du Ruby avec des fichiers qui auront une extension particulière (en .html.erb).
Et enfin, les contrôleurs vont réagir aux actions des utilisateurs, ils vont chercher les données dans la base et les mettre à disposition des vues.
Ceci est un brêve présentation du modèle MVC, qui meriterait une veille complète à lui seul.

ROR fonctionne également grâce aux gems. Ce sont des paquets mis à disposition par la communauté Ruby. Plus simplement, ce sont des fichiers qui vont contenir du code Ruby nécessaire à effectuer une action. Il existe un nombre très important de gems permettant d’effectuer différentes actions telles que l’envoi d’emails, l’upload de fichiers, la gestion des inscriptions et connexions, la gestion des droits d’accès, ...
Ces gems vont pouvoir être installées grâce à RubyGem, qui est un gestionnaire de paquets similaires à dnf (que l’on utilise sous Fedora) et qui permet d’installer, de supprimer ou de mettre à jour les paquets.

Pour finir, ROR est basé sur deux principes fondammentaux que sont :
- don’t repeat yourself, c’est-à-dire que l’on va tenter de n’avoir les éléments de l’application qu’à un seul endroit.
- convention plutôt que configuration ou plutôt ne préciser les éléments de configuration que s’ils ne respectent pas les conventions établies.

Utilisation de Ruby On Rails :

Pour démarrer un noveau projet sur Ruby On Rails, il faut utiliser le terminal et effectuer la commande suivante :


Cette action va nous générer tous les fichiers nécessaire à l’élaboration de notre projet. Parmi ces fichiers, nous allons retrouver le dosser app contenant nos modèles, nos vues et nos contrôleurs entre autres.



Il nous faut à présent générer les différents fichiers dont nous auront besoin grâce aux générateurs de Rails.


Et ainsi, on va pouvoir coder dans nos différents fichiers en respectant le motif MVC.

Un exemple de modèle : 



Un exemple de vue : 



Un exemple de contrôleurs :


Clément Hermant

Lexique: 
framework : un ensemble cohérent de logiciels structurels, qui sert à créer les fondations ainsi que les grandes lignes de tout ou d'une partie d'un logiciel.

Sources: 
Openclassrooms
Wikipédia


Commentaires