Introduction à Ruby on Rails
Abstract
This post summarizes the main advantages of the RoR framework, and presents some differences with the LeeBeLLuL framework (described in my first post on this blog). For memory, LeeBeLLuL is a RIA framework based on rapid developpement applications, in iteratives cycles and involving final users from the beginning. Off course this type of framework is 'Web 2.0 ready' and include Ajax functions and scripting language (IronPython).
Résumé
Cet article résume les principaux avantages du framework RoR, ses limitations actuelles au niveau français et un comparatif avec le framework LeeBeLLuL (présenté dans mon premier article).
Cet article résume les principaux avantages du framework RoR, ses limitations actuelles au niveau français et un comparatif avec le framework LeeBeLLuL (présenté dans mon premier article).
Introduction
RoR est la combinaison orientée applications web du langage Ruby et du framework open source Rails. Ruby est un pur langage de scripting orienté objet apparu au Japon au début des années 1990. Rails est un framework dans le but d’accroître la productivité des développements d’applications web tout en respectant le modèle MVC (Model View Controller) dans sa totalité.
Il existe aujourd’hui de très bon supports pour aborder RoR :
http://mordeletj.free.fr/RoR/synthese_RoR.pdf (une excellente synthèse en français)
http://www.railsfrance.org (le portail français de RoR)
http://www.rubyonrails.org/ (la bible RoR, d’où vous pourrez accéder à de très bons tutoriaux dont les fameux ‘Rolling with Ruby on Rails’ et ‘Four days on Rails’).
RoR est la combinaison orientée applications web du langage Ruby et du framework open source Rails. Ruby est un pur langage de scripting orienté objet apparu au Japon au début des années 1990. Rails est un framework dans le but d’accroître la productivité des développements d’applications web tout en respectant le modèle MVC (Model View Controller) dans sa totalité.
Il existe aujourd’hui de très bon supports pour aborder RoR :
http://mordeletj.free.fr/RoR/synthese_RoR.pdf (une excellente synthèse en français)
http://www.railsfrance.org (le portail français de RoR)
http://www.rubyonrails.org/ (la bible RoR, d’où vous pourrez accéder à de très bons tutoriaux dont les fameux ‘Rolling with Ruby on Rails’ et ‘Four days on Rails’).
Avantages principaux
- Framework MVC (en natif)
- Open source
- Moins de code (= moins de maintenance).
- ‘Scaffolding’ (échaffaudage) : le framework permet d’effectuer un ensemble d’opérations CRUD (Create, Retrieve, Update, Delete) en une fois, pour éventuellement les compléter par la suite.
- Support des principales BDD .
- Adressage des URLs.
- Intégration des tests unitaires (génération d’actions et de composants testables).
- Mapping automatique (apport très important en terme de réduction de code !!).
- Règles de validation intégrées.
- Gestion des tempates (pour les vues).
- Intégration d’AJAX (bibliothèque Prototype pour l’instant).
- Fiabilité éprouvée (mise en place sur des sites à fort traffic aux Etats-Unis).
Quelques inconvénients (au niveau hexagonal) …
- L’hébergement (pas d’hébergeur français).
- Framework ‘jeune’ (manque de recul pour une DSI).
- Implantation laborieuse en France (très peu de SSII vendent du ‘RoR’).
- L’hébergement (pas d’hébergeur français).
- Framework ‘jeune’ (manque de recul pour une DSI).
- Implantation laborieuse en France (très peu de SSII vendent du ‘RoR’).
Références
La référence incontournable de RoR est bien entendu 37signals, qui propose 5 applications développées avec RoR :
http://www.37signals.com
La référence incontournable de RoR est bien entendu 37signals, qui propose 5 applications développées avec RoR :
http://www.37signals.com
Mais d’autres sociétés commencent à s’implanter, à l’image de new bamboo :
http://new-bamboo.co.uk/

Quelques différences avec le framework LeeBeLLuL
La première différence se situe au niveau du langage de scripting : Ruby pour RoR et IronPython pour LeeBeLLuL. A noter qu’IronPython a été retenu par Microsoft et Ruby par IBM (.Net vs Java bis ?).
Au niveau de l’utilisation, ces 2 frameworks sont bien entendus RAD et MVC, mais la principale différence (et sans aborder les détails techniques) est qu’une application RoR se construit d’après le modèle de données et une application LeeBeLLuL se construit par l’IHM.
Les deux approches sont excellentes et in fine l’esprit ‘agile’ est respecté mais LeeBeLLuL me semble plus accessible, car la seule partie ‘technique’ de l’application est limité au codage des services (les données xml découlent directement de l’IHM).
Fabien Le Hoan.


0 Comments:
Enregistrer un commentaire
<< Home