Zlab.fr:~/jdll zifro$ rails demo create create app/controllers create app/helpers create app/models create app/views/layouts create config/environments.

Slides:



Advertisements
Présentations similaires
Module 5 : Implémentation de l'impression
Advertisements

Le struts validator – framework de validation
« Les Mercredis du développement » Introduction Office « 12 » Présenté par Bernard Fedotoff Microsoft Regional Director Agilcom.
Présentation générale de SPIP Fonctionnalités principales dun CMS La séparation entre contenu et présentation Susciter linteractivité en interne et en.
Conception de Site Webs dynamiques Cours 5
Personnalisation des sites SharePoint avec SharePoint Designer 2007
Guillaume KRUMULA présente Exposés Système et Réseaux IR3 Mardi 5 Février 2008.
51 Les technologies XML Cours 7 : Utilisations dXML Janvier Version 1.0 -
Outils de développements
Design Pattern MVC En PHP5.
TP 3-4 BD21.
Projet 4info.
Développement dun simulateur dinterface graphique à distance Présenté par Michaël Delhaye Promoteur : Jean Vanderdonckt.
Introduction aux Web Services Partie 1. Technologies HTML-XML
Présentation application GRBL France Telecom
Développement d’applications web
CPI/BTS 2 Programmation Web Introduction au PHP
Bibliothèque Patchouli
Introduction à la programmation (420-PK2-SL) cours 12 Gestion des applications Technologie de linformation (LEA.BW)
Nouveau blog. WordPress connexion Nommez votre blog.
Middleware : XML-DBMS Permet de faire office d’interface entre des données XML et des bases de données relationnelles (insertion et récupération de données)
Struts 1 & 2 Tlohi ibtissam Tabit boutaina Ilias bouras
Administration de SharePoint
Développement Rapide dApplications Web avec.NET « Mon premier site »
Les instructions PHP pour l'accès à une base de données MySql
Projet JAVA EE Approfondi
Services fournis par le SI et technologies associées
ISICIL SWEETDEKI Intégration du logiciel Mindtouch Core dans la plate-forme ISICIL Guillaume HUSSON.
Le langage Javascript pour le web
Architecture dun site de vente au détail1 Modèle d'un site simple de vente Lexemple du livre Ruby on Rails Partie II Java Adventure Builder Demo Réalisé.
PhP-MySQL Pagora 2012/2013 CTD 1 - Presentation de moi ^^
Structures de données IFT-10541
Animateur : Med HAIJOUBI
PHP & My SQL.
Elabore par BELKADHI ABIR BEN HASSEN SALMA CHEBBI MARWA
JavaScript.
Créer des packages.
Quand l’agilité n’est pas une option
PHP & MySQL Master1 ICD Claire Jacquot Emilie Hot le 24/10/2006.
Introduction à Visual Studio C++ (VC++)
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Tutorat en bio-informatique Le 14 novembre Au programme… Les objets –Propriétés (attributs) –Constructeurs –Méthodes.
SciTools Understand A Source Code Analysis and Metrics Tool
Présentation du framework JSF (Java Server Faces) dans le modèle événementiel MVCII
P.D.F. Qui es-tu?.
Struts.
 Formulaires HTML : traiter les entrées utilisateur
La programmation par objets Principes et concepts Etude de Smalltalk.
Cours MIAGE « Architectures Orientées Services »Henry Boccon-GibodCours MIAGE « Architectures Orientées Services »Henry Boccon-Gibod 1 Architectures Orientées.
Initiation au JavaScript
Sites Web interactifs 2010 / 2011 / S1 Bernhard Rieder.
Architecture logicielle
Hiver 2004SEG2501 Chapître 41 Chapître 4 SDL – structure d’un système et son comportement.
3 Copyright © Oracle Corporation, Tous droits réservés. Créer des fonctions.
Cours n°4M1.ist-ie (S. Sidhom) UE 203 Promo. M1 IST-IE 2006/07 Conception d’un système d'information sur Internet Architecture trois-tiers : technologies.
Introduction à PHP TOURNADRE Guillaume - Informatique Réseaux URL :
13/07/2015 JSF Java Server Faces Master 2 Pro GLR TER David Mihura Eric Le Merdy.
Définition d’un CMS Comparatif des différents CMS Les CMS Généraux.
CPI/BTS 2 Programmation Web Les sites dynamiques Prog Web CPI/BTS2 – M. Dravet – 02/10/2003 Dernière modification: 02/10/2003.
Les systèmes de gestion de contenu
1 PHP 5 Notions fondamentales (niveau 1 cours #3) Formation continue – Cégep de Sainte-Foy François G Couillard.
L. Gurret – M. Herve – P. Mignon – J. Prarioz. Introduction  Dernière étape d’analyse  Cahier des charges, spécifications et conception orientée objet.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Correction du TD Chapitre 3.
Bloc 1 - UE 5 - Technologies de l’information et de la communication TIC Bachelier en immobilier T. SOUMAGNE.
Visual Information Solutions IDL 7.0 Pour une utilisation optimale d’IDL.
Parquet Geoffrey 3 ARIL EXIA.CESI ARRAS. Présentation du MLD Présentation de la persistance Présentation récapitulatif du projet JSP/SERVLET MVC Cycle.
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
INFORMATION SYSTEM MANAGER Présentation Atelier Zwook aux 5èmes Rencontres Mondiales du Logiciel Libre 2004 "Logiciel libre et développement durable" 6.
Transcription de la présentation:

zlab.fr:~/jdll zifro$ rails demo create create app/controllers create app/helpers create app/models create app/views/layouts create config/environments create components create db create doc create lib create lib/tasks create log create public/images create public/javascripts create public/stylesheets create script/performance create script/process create test/fixtures create test/functional create test/integration create test/mocks/development create test/mocks/test create test/unit create vendor create vendor/plugins create tmp/sessions create tmp/sockets create tmp/cache create tmp/pids create Rakefile create README create app/controllers/application.rb create app/helpers/application_helper.rb create test/test_helper.rb create config/database.yml create config/routes.rb create public/.htaccess create config/boot.rb create config/environment.rb create config/environments/production.rb create config/environments/development.rb create config/environments/test.rb create script/about create script/breakpointer create script/console create script/destroy create script/generate create script/performance/benchmarker create script/performance/profiler create script/process/reaper create script/process/spawner create script/process/inspector create script/runner create script/server create script/plugin create public/dispatch.rb create public/dispatch.cgi create public/dispatch.fcgi create public/404.html create public/500.html create public/index.html create public/favicon.ico create public/robots.txt create public/images/rails.png create public/javascripts/prototype.js create public/javascripts/effects.js create public/javascripts/dragdrop.js create public/javascripts/controls.js create public/javascripts/application.js create doc/README_FOR_APP create log/server.log create log/production.log create log/development.log create log/test.log zlab.fr:~/jdll zifro$ cd demo/zlab.fr:~/jdll/demo zifro$ ruby script/server start=> Booting Mongrel (use 'script/server webrick' to force WEBrick)=> Rails application starting on Call with -d to detach=> Ctrl-C to shutdown server** Starting Mongrel listening at :3000** Starting Rails with jdll environment...** Rails loaded.** Loading any Rails specific GemPlugins** Signals ready. TERM => stop. USR2 => restart. INT => stop (no restart).** Rails signals registered. HUP => reload (without restart). It might not work well.** Mongrel available at :3000** Don’t use CTRL-C to stop. Wait for lecture to end. Welcome aboard You’re at JDLL! About your event’s environment Getting started Here’s how to get rolling: 1.Take a seat and enjoy the lecture Nobody needs to know your login and password.

Présentation de Ruby on Rails Journées Du Logiciel Libre 2007 JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT

Avant-propos :: présentation de l’orateur Guillaume “Zifro” DESRAT Rubyiste depuis 2002 Railer depuis 2005 Président de l’association ( participe aux discussions sur les listes RubyFR et RailsFrancerticipe aux discussions s répond à vos questions sur IRC consultant informatique pour Cersi (

Présentation de Ruby on Rails Journées Du Logiciel Libre 2007 JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT un tour d’horizon de Ruby on Rails les concepts, les principes mis en oeuvre un aperçu du code Avant-propos : objet de la conférence

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Qu’est-ce que Ruby on Rails ? Ruby on Rails, c’est : un framework pour développer des applications Web écrit en Ruby basé sur le concept MVC orienté conventions plutôt que configuration libre ! disponible sous licence MIT (compatible GPL)

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Qu’est-ce que Ruby on Rails ? Ruby on Rails, c’est : le travail de David Heinemeier Hansson, alias DHH la version 1.0 mi-décembre 2005 la version 1.2.5, dite de maintenance, il y a quelques jours une version prochainement un noyau allégé plus de fonctionnalités sous forme de plugins

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : écrit en Ruby Ruby

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : écrit en Ruby Ruby, c’est : un langage de programmation interprété écrit en C orienté objet (presque tout est objet) dynamique une aggrégation d’excellentes idées d’autres langages : Perl Eiffel Smalltalk / Squeak... libre ! disponible sous licences MIT (compatible GPL) et Ruby

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : écrit en Ruby Ruby, c’est : le travail de Yukihiro Matsumoto, alias Matz un projet depuis 1993 distribué depuis 1995 aujourd’hui en version bientôt (Noël 2007 ?) la version 2.0 une réécriture complète de la VM plus rapide

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : écrit en Ruby Ruby, c’est : variable_locale = 5 $variable_globale = variable_locale CONSTANTE = :un_symbole 'une chaîne de caractères' “valeur : #{variable_locale}\n” tableau = [1, 2, 3, 4] table_de_hachage = { 1 => 2, 3 => 4 } # des commentaires + - * / || && or and...

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : écrit en Ruby Ruby, c’est : class UneClasse = 1 def = ‘A’ += 1 end def methode_d_instance end def UneClasse.methode_de_classe puts end UneClasse.methode_de_classe # affiche 1 uc = UneClasse.new uc.methode_d_instance # affiche ‘A’ UneClasse.methode_de_classe # affiche 2

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : écrit en Ruby Ruby, c’est : warnings = info = 0 File.open('log.txt') do |f| f.readlines.each do |line| case line when /^WARNING/ warnings += 1 when /^INFO/ info += 1 end puts "There are #{warnings} warnings and #{info} info messages."

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : basé sur MVC MVC

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : basé sur MVC Modèle - Vue - Contrôleur un modèle pour la persistance des données une vue pour l’interface l’utilisateur un contrôleur pour coordonner le tout une idée de Trygve Reenskaug, en initialement pensé pour les applications de bureau adapté au Web par la suite

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : basé sur MVC Architecture MVC pour le Web : NavigateurNavigateur Base de données VueVue ContrôleurContrôleur ModèleModèle

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : basé sur MVC Des URL différentes : site Web : zlab.fr contrôleur : Books action : show un paramètre, id, qui vaut 1 une convention ( ), paramétrable

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : des conventions ( ) Conventions vs. Configuration

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : des conventions ( ) Ruby on Rails privilégie l’utilisation de conventions plutôt que celle de fichiers de configuration : des comportements par défaut qui se posent en standard moins d’erreurs des conventions que l’on peut ignorer au besoin Un fichier de configuration tout de même : pour la connexion aux bases de données (format YAML)

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : des conventions ( ) Architecture sur le disque : une structure de fichiers complète MVC : séparation des modèles, vues et contrôleurs zlab.fr:~/jdll zifro$ ls demo README components doc public tmp Rakefile config lib script vendor app db log test zlab.fr:~/jdll zifro$ ls demo/app controllers helpers models views

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : basé sur MVC ActiveRecord

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActiveRecord ActiveRecord, c’est : le M dans MVC un Object Relational Mapper les tables sont représentées par des classes les enregistrements par des objets les champs par des attributs idtitleauthor 1The Ruby WayHal Fulton 2Ruby for RailsDavid A. Black Table “Books” <Book> id = 1 title = ‘The Ruby Way’ author = ‘Hal Fulton’ <Book> id = 1 title = ‘The Ruby Way’ author = ‘Hal Fulton’ <Book> id = 2 title = ‘Ruby for Rails’ author = ‘David A. Black’ <Book> id = 2 title = ‘Ruby for Rails’ author = ‘David A. Black’

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActiveRecord Définition du modèle “Book”, pour représenter les livres enregistrés dans la base de données : class Book < ActiveRecord::Base end convention : une classe correspond à une table portant le même nom au pluriel inutile de définir les attributs, ActiveRecord les lit directement dans la base de données

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActiveRecord On ne manipule que des objets Ruby : création d’un objet : initialisation de ses attributs : lecture des attributs : sauvegarde de l’objet : création et sauvegarde : suppression : b = Book.new b.title = 'Agile Web Development with Rails' b.author = 'Dave Thomas & David Heinemeier Hansson' b.title # renvoie 'Agile Web Development with Rails' b.save # renvoie true ou false b.save! # lève une exception en cas d’erreur b.create :title => 'Ruby in a Nutshell', :author => 'Matz' b.delete

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActiveRecord ActiveRecord, c’est aussi : des méthodes pour interroger les modèles (des “finders”) idtitleauthor 1The Ruby WayHal Fulton 2Ruby for RailsDavid A. Black Table “Books” class Book < ActiveRecord::Base end b = Book.find 1 b = Book.find :first, :conditions => ['title LIKE ?', '%Ruby%'] b = Book.find :all, :conditions => ['title LIKE ?', '%Ruby%'] b = Book.find_by_author 'Hal Fulton' b = Book.find_by_title 'Ruby for Rails'

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActiveRecord ActiveRecord, c’est aussi : la description des relations entre les modèles idtitleauthorcategory_id 1The Ruby WayHal Fulton1 2Ruby for RailsDavid A. Black1 Table “Books” idlabel 1Computing 2Fiction Table “Categories” class Book < ActiveRecord::Base belongs_to :category end class Category < ActiveRecord::Base end

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActiveRecord Ce qui permet d’écrire : b = Book.find_by_title 'Ruby for Rails' b.category.label c = Category.find_by_label 'Fiction' b = Book.create :title => 'Winter Hauntering', :author => 'Dan Simmons', :category_id => c.id b = Book.new b.title = 'The man who disappears' b.author = 'Jeffery Deavers' b.category = c b.save

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActiveRecord idtitleauthorcategory_id 1The Ruby WayHal Fulton1 2Ruby for RailsDavid A. Black1 Table “Books” idlabel 1Computing 2Fiction Table “Categories” class Book < ActiveRecord::Base belongs_to :category end Pour traverser la relation depuis l’autre modèle : class Category < ActiveRecord::Base has_many :books end

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActiveRecord Ce qui permet d’écrire : c = Category.find_by_label 'Computing' c.books b = Book.create :title => 'Hyperion', :author => 'Dan Simmons' fiction = Category.find_by_label 'Fiction' fiction.books << b fiction.books.find :all, :conditions => ['author = ?', 'Dan Simmons']

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActiveRecord ActiveRecord, c’est aussi : des méthodes pour valider les données du modèle class Book < ActiveRecord::Base belongs_to :category validates_presence_of :title, :author validates_length_of :title, :minimum => 2 def validate return false if self.author == 'Why the luck stiff' end

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : basé sur MVC ActionView

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionView ActionView, c’est : le V dans MVC un système de génération d’interface Web, avec : des layouts (gabarits) des pages qui s’intègrent dans les layouts des balises spécifiques pour intégrer du code Ruby (eRB) des fichiers.rhtml dans app/views/

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionView Exemple de layout : JDLL : Ruby on Rails demo permet de partager une charte graphique, une présentation, entre plusieurs pages est remplacé par le contenu de la vue qui est rendue

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionView Exemple de vue : le code Ruby entre est exécuté le code Ruby entre est exécuté et sa sortie standard est écrite dans la vue Titre du livre par Auteur du livre page générée le matin du page générée l'après-midi du

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionView Page générée : JDLL : Ruby on Rails demo Titre du livre par Auteur du livre page générée le matin du 19/10

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionView La même vue, dynamique : la vue a accès aux variables du contrôleur elle ne contient normalement aucune logique si beaucoup de code est nécessaire pour un affichage, les helpers prennent le relais par page générée le matin du page générée l'après-midi du

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionView Autre exemple, pour établir des liens : remplace avantageusement les plus on utilise ActionView... moins on écrit d’HTML <%= link_to 'Livre suivant', :controller => 'books', :action => 'show', :id => (params[:id] + 1) %>

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionView ActionView, c’est aussi : la possibilité de faire de l’AJAX (classique et RJS) la possibilité d’utiliser Prototype et script.aculo.us sans écrire une ligne de Javascript, seulement du Ruby ", :update => 'author', :url => { :action => :plop } %> par auteur

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : basé sur MVC ActionController

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionController ActionController, c’est : le C dans MVC le chef d’orchestre il contient la logique de l’application il interroge le modèle manipule les données récupérées détermine la vue à afficher à l’utilisateur

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionController Définition du contrôleur “Books”, pour afficher les livres enregistrés dans la base de données : le contrôleur est une classe l’action est une méthode le nom de l’action permet de déduire la vue à rendre class BooksController < ApplicationController def show end

Base de données 3 2 ModèleModèle JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionController NavigateurNavigateur VueVue ContrôleurContrôleur class BooksController < ApplicationController def show end

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionController Définition du contrôleur “Books”, pour afficher les livres enregistrés dans la base de données : le contrôleur interroge le modèle à la fin de l’exécution, la vue est rendue, dans le layout class BooksController < ApplicationController def = Book.find(params[:id]) end end

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionController Gestion d’un paramètre “id” qui puisse être inexistant dans la base de données : class BooksController < ApplicationController def show = Book.find(params[:id]) render :layout => 'special' rescue redirect_to :controller => 'error', :action => 'raised', :id => params[:id] end end

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActionController Suppression d’un livre : class BooksController < ApplicationController def show... end def = Book.find(params[:id]) redirect_to :action => 'list' else flash[:notice] = 'Erreur à la suppression' render :action => 'show' end end

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails ActiveSupport

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActiveSupport ActiveSupport, c’est : le S dans Sympathique des extensions des classes de base de Ruby pour simplifier le développement améliorer la lisibilité du code

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ActiveSupport 1.kilobyte # => megabyte # => days.before # => Wed Oct 17 10:01: day.from_now # => Sat Oct 20 10:01: days + 1.week # => year / 1.day # => 365 nil.blank? # true ''.blank? # true {}.blank? # true [].blank? # true ActiveSupport, c’est :

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails Mais encore ?

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : mais encore ? Ruby on Rails, c’est : un framework qui intègre les tests dès le départ tests unitaires (modèles) tests fonctionnels (contrôleurs) ActionMailer des Web services REST des plugins pour quasiment tout ce qui peut être nécessaire du code Ruby bien écrit

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : outils de développement Outils

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : outils de développement De nombreux éditeurs et IDE ont un support Ruby et Rails : (g)vim (x)emacs SciTE / Scintilla NetBeans 6.x Eclipse, via les extensions Ruby Development Tools et RadRails TextMate FreeRIDE Ride-Me

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : outils de développement Des outils propres à Ruby et Rails : irb (interpréteur intéractif) rake (make façon Ruby, lanceur de tâches) gem (gestionnaire de “paquets” : bibliothèques, plugins,...) console (irb dans l’environnement de l’application Rails) irb(main):001:0> message = 'Bonjour' => "Bonjour" irb(main):002:0> message.downcase => "bonjour" irb(main):003:0> message.upcase => "BONJOUR" zlab.fr:~/jdll zifro$ gem list --local rails *** LOCAL GEMS *** rails (1.2.5) Web-application framework with template engine, control-flow layer, and ORM.

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ruby on Rails : ressources Ressources

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ressources en Français Sites Web : le portail RailsFrance ( le portail RubyFrance ( le site officiel Ruby, en Français ( le site officiel Ruby, les nombreux blogs de la communauté francophone ( Listes de diffusion : RailsFrance, groupe Google ( ( RubyFR-public, groupe Google Groupes de discussion : fr.comp.lang.ruby.lang.ruby Livres : Ruby on Rails, 2ème édition Ru Ruby et Rails Ruby par l’exemple Ruby in a Nutshell

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Ressources en Anglais Sites Web : le site officiel Ruby on Rails ( le site officiel Ruby ( les sites axés “Web 2.0” (PeepCode,...) les sites axés “Web 2. les nombreux blogs de la communauté Ruby et Rails ( Listes de diffusion :diffusion : les listes les listes officie Ruby-Talk et Groupes de discussion : comp.lang.ruby Livres : Agile Web Development with Rails, 2nd edition Ruby for Rails Rails Recipes Programming Ruby The Ruby Way

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT C’est fini... Des questions ?

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT C’est fini... Merci !

JDLL Présentation de Ruby on Rails - Guillaume “Zifro” DESRAT Licence de ce document Les contenus originaux de cette présentation sont diffusés sous licence Creative Commons, avec les options suivantes : paternité (obligation de mentionner l’auteur) pas d’utilisation commerciale (sans accord explicite) pas de modification le texte de la licence complète est disponible à l’adresse suivante : nd/2.0/fr/ nd/2.0/fr/ toute autre utilisation nécessite un accord explicite et écrit de la part de l’auteur