Introduction à Rails
Éric DaspetParis On Rails, novembre 2006
Qui êtes-vous ?
Réalise / Décide
Web / Client-serveur
Ruby / PHP / Java
Rails / MVC / scripts
Qui suis-je ?
Éric DaspetConsultant Web
Open Source
Rails, un framework
Cadre de travailSolution techniqueOutils à dispositionDédié au Web
Écrit en Ruby
Un peu de visuel ...
Déploiement de Rails avec l’IDE Radrails
Structure initiale
Configuration et lancement
Création du projet
Les répertoires créés
Config SGBDR
Serveur de test
Rails, du MVC
Les objets manipulésLe modèle
Le code d’affichageLa vue
Ce que vous en faîtesLe contrôleur
Un peu de visuel ...
Création d’une première application
Utilisation de la structure MVC
Générateur de modèle
Scripts MVC simples
Définition des données
Résultat MVC
Le framework Rails
Simple
Structuré
Dedans : Active Record
Décrit la liaisonObjet – Relationnel
Dynamique
Basé sur des conventions
Un peu de visuel ...
Création d’une entité Active Record
Accès aux données en lecture et recherche
création, modification et suppression
Utilisation des données
Active Record, encore plus
Gérer les relations
Gérer les jointures
Gérer les contraintes
Et bien plus encore...
Un peu de visuel ...
Faire des relations entre les entités
Utiliser des contextes
Valider des données
Utilisation des catégories
Résultat de validation
Active Record
Simple
Automatique
Efficace
Et le reste ? Simple ?
10.years.ago50.megabytes7.is_multiple_of? 3Dvd.find_by_nom()
LisibilitéConfort
Le reste ? Automatique ?
Formulaires générésValidation automatiséeGénération du CRUDServices Web natifs
DynamiquePas de configuration
Le reste ? Efficace ?
Console complèteBreakpointIDE dédié : RadrailsTests unitairesDéploiement
Code concisOutils intégrés
Et le reste ? Extensible ?
Plugins mis en avantBasé sur RubySimple à personnaliséAccès aux sources
Aucune limitePlugins intégrés
Et le reste ? Moderne ?
Ajax intégréJavascript généréEffets visuelsPhilosophie REST
Méthodes agilesÀ la pointe
Les autres outils
Simples
Complets
Extensibles
Modernes
Le résultat ?
Plus simple d'accèsMoins d’erreurs
Plus de réactivitéMaintenances courtes
Plus de confortPeu de limitations
Plus productifs ?
Ouimais peut être pas sur le
développement initial
En qualitéEn maintenanceEn évolutionsEn réactivité
Les limites actuelles (2006)
Qui s’améliorentDocumentationPerformancesEncore peu utilisé
StructurellesPeu de limitesÉvolution constanteReprise d'existant
Par rapport aux autres ?
Un peu de visuel ...
Rubynom = dvd.categorie.nom
JavaString nom = dvd.getCategorie().getNom() ;
PHP$nom = $dvd->getCategorie()->getNom() ;
À retenir sur Ruby On Rails
Simplicité, confort, maintenance courte
Agile, réactivité et facilité d’évolution
Outillage complet, automatisé, moderne
Introduction à Rails
Éric DaspetParis On Rails, novembre 2006
Liens annexes, anglais
Ruby : http://www.ruby-lang.org/Doc. Ruby : http://www.ruby-doc.org/Rails : http://www.rubyonrails.org/
Les screencastLes documentations (API)
Les livres : (entre autres sur http://pragmaticprogrammer.com/)
Rails RecipesAgile Web Development with Rails
Liens annexes, français
Ruby France : http://www.rubyfr.org/Rails France : http://www.railsfrance.org/
Usenet : fr.comp.lang.rubyLivres : http://www.eyrolles.com/
Ruby On Rails (traduction du Agile Web Development)
Liens très annexes
Éric Daspet : http://eric.daspet.name/
Livre PHP 5 avancé : http://eyrolles.com/Paris-Web : http://www.paris-web.fr/
SQLI : http://www.sqli.com/ Me contacter à SQLI : [email protected]
Réutilisation du contenu
Les contenus originaux de cette présentation sont diffusés sous licence Creative Commons avec les options :
Paternité (obligation de mentionner l'auteur)Pas d'utilisation commerciale (sans accord explicite)Pas de modifications (contenu d'opinion)
La licence complète est disponible à l'adresse http://creativecommons.org/licenses/by-nc-nd/2.0/fr/
Toute autre utilisation nécessite un accord explicite et écrit de la part de l'auteur