On The Rails Again

Avant de commencer avec Ruby on Rails

Posté par Nicolas et Nima le 28 septembre 2011

A l'heure où nous écrivons cet article et lançons ce blog nous sommes à la version 3 de Rails (la sortie officielle date du 29 Août 2010) donc faites attention lors de vos différentes recherches sur internet, pensez bien à regarder les versions utilisées !

Ruby et les Gems

Ruby

Le framework Ruby On Rails étant écrit en Ruby, connaitre quelques bases du langage pourra toujours aider. Pas de panique ! Pas besoin d'être un expert en Ruby pour savoir faire du Rails, mais cela vous aidera dans l'apprentissage de ce framework !

Les Gems

Les Gems sont comme des petits modules (ce sont des applications et bibliothèques Ruby empaquetées) que l'on peut ajouter à notre application Rails et qui permettent assez souvent de se simplifier la vie. Par exemple des Gems d'authentification existent et permettent de ne pas à avoir à coder tout un système d'authentification. Il n'est pas nécessaire de savoir se servir des Gems pour commencer à faire du Rails, mais il est toujours bon de savoir qu'elles existent. Voici des liens à connaître où vous pourrez trouver la plupart des Gems :

Le MVC - Modèle-Vue-Contrôleur

Le MVC est une architecture actuellement très répandue et vous sera également utile pour d'autres projets informatiques donc n'hésitez vraiment pas à vous y attarder ! Le concept n'est pas évident et clair du premier coup d'oeil donc n'hésitez pas à lire plusieurs articles pour mieux comprendre. Quoiqu'il en soit le temps aidera également à la compréhension !

Mais nous allons tout de même voir un aperçu de ce qu'est l'architecture MVC autour de laquelle Rails est organisé.

Tout d'abord, les avantages de l'architecture MVC sont les suivants :

  • la séparation de la logique métier de l’interface utilisateur ;
  • la limitation naturelle des répétitions (DRY) ;
  • l’évidence de l’emplacement des différents types de code pour une maintenance facilitée.

Les Modèles

Un modèle représente l’information, les données d’une application et les règles pour la manipuler. Dans le cas de Rails, les modèles sont d’abord utilisés pour gérer les interactions avec les tables dans une base de données. Le plus souvent une table dans votre base correspond à un modèle dans l’application. L’essentiel de la logique métier de votre application est concentré dans les modèles.

Les Vues

Les vues sont l’interface utilisateur de votre application. En Rails, les vues sont souvent des fichiers HTML contenant du code Ruby intégré et dédié à la présentation des données. Les vues ont la responsabilité de fournir des données au navigateur, ou aux autres outils utilisés pour faire des requêtes à votre application.

Les Contrôleurs

Les contrôleurs constituent le lien entre les modèles et les vues. En Rails, les contrôleurs sont responsables du traitement des requêtes entrantes en provenance du navigateur, de l’interrogation des modèles pour obtenir des données, et du passage de ces données aux vues pour leur présentation.

REST - Representational State Transfer

REST est un style d'architecture et la vie sera bien plus facile pour vous si vous concevez vos applications Rails comme ceci.

Références bibliographique

Vous aimez la lecture ? Vous préférez apprendre avec un bon livre ? Voilà quelques références qui pourraient vous intéresser !

Allez voir ailleurs !

Nous vous incitons fortement à aller voir les articles et les tutoriels des autres ! D'ailleurs si vous êtes féru en anglais n'hésitez pas à aller du côté de la communauté anglaise qui possède également beaucoup de ressources. Un tas de personnes font des articles et des tutoriels avec un autre point de vue que le nôtre, une façon de penser qui se rapproche peut être plus de la vôtre. Voilà une liste non exhaustive, évidemment :

  • Les RailsGuides. Nous ne pouvons que le conseiller très très fortement. Long et en anglais, mais remplis de la plupart des informations que vous cherchez et chercherez !
  • Les Guides Rails La même chose mais en français ! Tout n'est pas traduit, mais vous trouverez une partie des guides en français. (La première page est en anglais mais les guides sont bien en français !) Ces traductions correspondent au répo git du créateur de RailsDébutant.org. Il n'est donc pas forcément à jour par rapport au répo officiel. (N'hésitez pas à contribuer si vous êtes bon en anglais et que vous avez un peu de temps !)
  • Les RailsCast Ces vidéos, certes en anglais, sont très concises et très bien présentées par le célèbre Ryan Bates !
  • Comment débuter en Ruby on Rails de Camille Roux.

Des choses à ajouter ?

Si vous avez des références intéressantes à conseiller, n'hésitez pas à nous les faire parvenir dans les commentaires pour que nous mettions notre article à jour !