SlideShare une entreprise Scribd logo
1  sur  26
Télécharger pour lire hors ligne
Uniendo los
                                                                        puntos
                                                                      en Ruby On
                                                                         Rails
                                                                            Rubén Medellín
                                                                                 @chubas

                                                                                WorkshopCamp México
                                                                                25 – 10 – 09
Bajo licencia Creative Commons Attribution-Non-Commercial-Share Alike 2.5
ABSTRACCIONES
Abstraccion
                 es
Component
es
esenciales
de las
cosas
Modelo web tradicional
La   MAGIA
de   Rails
NO HAY
MAGIA




Entender muy bien los
componentes de Rails
¿Qué es Rails?
   “Ruby on Rails is a breakthrough
  in lowering the barriers of entry
      to programming. Powerful web
   applications that formerly might
     have taken weeks or months to
      develop can be produced in a
            matter of days.”




Tim O'Reilly, fundador
de O'Reilly Media
Una que me gusta más
      “Ruby on Rails is astounding.
    Using it is like watching a kung-
     fu movie, where a dozen bad-ass
    frameworks prepare to beat up the
    little newcomer only to be handed
       their asses in a variety of
            imaginative ways.”




    Nathan Torkington,
O'Reilly Program Chair for
           OSCON
Mi propia definición
 Rails es una plataforma
     de desarrollo cuyo
  principal objectivo es
 eliminar la complejidad
innecesaria, haciendo el
   proceso más ágil y al
 desarrollador más feliz
La “magia” de Ruby on Rails está en
  sus principios:

•   Convention over configuration
•   Complex framework, simple logic
•   Test, then code
•   Don't repeat yourself
•   Don't reinvent the wheel

• entre otros
MVC en Rails


  ActiveRecord
       +
ActionController
       +
   ActionView
ActiveRecord

ORM – Object Relational Mapper




                 Database agnostic
Modelos


                        CRUD
•   save, save!
•   new, create, create!
•   delete
•   find, find_by_*
Modelos

                 Relación entre
                 entidades
• has_many
• belongs_to
• has_and_belongs_to_many
Modelos

                  Validación y
                  procesamiento

  Validaciones

  Callbacks / Observadores
ActionController

Procesamiento y resolución de
         peticiones
Controladores

Recibe peticiones

Accede a los modelos

Prepara una respuesta
(generalmente una vista)
Rutas


En base a regexps + opciones

url_for / rutas nombradas

REST
Controladores



Se dividen en acciones

Fat models, thin controllers
Controladores

Tienen acceso al objeto request y sus
  atributos
Headers, cookies, sesión, parámetros (GET o POST),
  response



Filtros y wrappers


Se encargan de preparar la respuesta
Respuesta

Por convención, rails
regresará una vista con el
nombre de la acción

Se puede regresar otra vista,
datos (archivos, streams),
redirecciones, errores, AJAX
ActionView

•Sistema de templates

•Accede a las variables y datos
pasados por el controlador

•La menor lógica posible en las
vistas
Pero eso no es todo...


La arquitectura Rails es
   altamente escalable

   • PLUGINS / GEMAS
Plugins para:
                 •OpenID
             •Autenticación
           •Control de acceso
                  •Roles
               •Paginación
             •APIs externas
•(Twitter, Youtube, flickr, google maps)
       •Búsqueda (sphinx, ferret)
                 •Vistas
                 •Formas
                   •CSS
Taller práctico

Contenu connexe

Similaire à WorkshopCamp Mexico 09 - Uniendo los puntos con Ruby on Rails

Presentación rails 3 Santo Tomás Concepción
Presentación rails 3 Santo Tomás ConcepciónPresentación rails 3 Santo Tomás Concepción
Presentación rails 3 Santo Tomás ConcepciónNelson Rojas Núñez
 
"La era de los frameworks: Ruby On Rails"
"La era de los frameworks: Ruby On Rails""La era de los frameworks: Ruby On Rails"
"La era de los frameworks: Ruby On Rails"Enrique Place
 
Presentación Ruby on Rails
Presentación Ruby on RailsPresentación Ruby on Rails
Presentación Ruby on RailsGiannis Morales
 
Trabajo fin de carrera
Trabajo fin de carreraTrabajo fin de carrera
Trabajo fin de carreraAgustin Cuenca
 
Taller de Introducción a Ruby on Rails
Taller de Introducción a Ruby on RailsTaller de Introducción a Ruby on Rails
Taller de Introducción a Ruby on RailsDiacode
 
9 razones para programar en Ruby On Rails
9 razones para programar en Ruby On Rails 9 razones para programar en Ruby On Rails
9 razones para programar en Ruby On Rails kyaalena
 
Ruby on rails
Ruby on railsRuby on rails
Ruby on railspelusa
 
Ruby on rails
Ruby on railsRuby on rails
Ruby on railsJoski Jk
 
Ruby on Rails
Ruby on RailsRuby on Rails
Ruby on RailsJoski Jk
 
Ruby on Rails - ETyC 2011
Ruby on Rails - ETyC 2011Ruby on Rails - ETyC 2011
Ruby on Rails - ETyC 2011Rafael Franco
 
Joserojas Web 2.0
Joserojas Web 2.0Joserojas Web 2.0
Joserojas Web 2.0Jose Rojas
 
Jose Rojas Desarrollo Rapido de Aplicaciones con RoR
Jose Rojas Desarrollo Rapido de Aplicaciones con RoRJose Rojas Desarrollo Rapido de Aplicaciones con RoR
Jose Rojas Desarrollo Rapido de Aplicaciones con RoRJose Rojas
 
Introducción a Ruby on Rails
Introducción a Ruby on RailsIntroducción a Ruby on Rails
Introducción a Ruby on RailsDiego Algorta
 
Presentacion Ruby on Rails CTIC-Cusco2007
Presentacion Ruby on Rails CTIC-Cusco2007Presentacion Ruby on Rails CTIC-Cusco2007
Presentacion Ruby on Rails CTIC-Cusco2007JuancaPompilla
 
API REST conceptos (Rails-api)
API REST conceptos (Rails-api)API REST conceptos (Rails-api)
API REST conceptos (Rails-api)Daryl Moreno
 
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQLDesarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQLJosé Alfredo Ramírez
 
Presentacion Ruby on Rails en Universidad Autónoma 2009
Presentacion Ruby on Rails en Universidad Autónoma 2009Presentacion Ruby on Rails en Universidad Autónoma 2009
Presentacion Ruby on Rails en Universidad Autónoma 2009Nelson Rojas Núñez
 

Similaire à WorkshopCamp Mexico 09 - Uniendo los puntos con Ruby on Rails (20)

Presentación rails 3 Santo Tomás Concepción
Presentación rails 3 Santo Tomás ConcepciónPresentación rails 3 Santo Tomás Concepción
Presentación rails 3 Santo Tomás Concepción
 
Ruby on Rails
Ruby on RailsRuby on Rails
Ruby on Rails
 
"La era de los frameworks: Ruby On Rails"
"La era de los frameworks: Ruby On Rails""La era de los frameworks: Ruby On Rails"
"La era de los frameworks: Ruby On Rails"
 
Presentación Ruby on Rails
Presentación Ruby on RailsPresentación Ruby on Rails
Presentación Ruby on Rails
 
Trabajo fin de carrera
Trabajo fin de carreraTrabajo fin de carrera
Trabajo fin de carrera
 
Taller de Introducción a Ruby on Rails
Taller de Introducción a Ruby on RailsTaller de Introducción a Ruby on Rails
Taller de Introducción a Ruby on Rails
 
9 razones para programar en Ruby On Rails
9 razones para programar en Ruby On Rails 9 razones para programar en Ruby On Rails
9 razones para programar en Ruby On Rails
 
Ruby on rails
Ruby on railsRuby on rails
Ruby on rails
 
Ruby on rails
Ruby on railsRuby on rails
Ruby on rails
 
Ruby on Rails
Ruby on RailsRuby on Rails
Ruby on Rails
 
Ruby on Rails - ETyC 2011
Ruby on Rails - ETyC 2011Ruby on Rails - ETyC 2011
Ruby on Rails - ETyC 2011
 
Joserojas Web 2.0
Joserojas Web 2.0Joserojas Web 2.0
Joserojas Web 2.0
 
Ruby on Rails en Grandes Companias, Casos Reales
Ruby on Rails en Grandes Companias, Casos RealesRuby on Rails en Grandes Companias, Casos Reales
Ruby on Rails en Grandes Companias, Casos Reales
 
Jose Rojas Desarrollo Rapido de Aplicaciones con RoR
Jose Rojas Desarrollo Rapido de Aplicaciones con RoRJose Rojas Desarrollo Rapido de Aplicaciones con RoR
Jose Rojas Desarrollo Rapido de Aplicaciones con RoR
 
Introducción a Ruby on Rails
Introducción a Ruby on RailsIntroducción a Ruby on Rails
Introducción a Ruby on Rails
 
Nombre
NombreNombre
Nombre
 
Presentacion Ruby on Rails CTIC-Cusco2007
Presentacion Ruby on Rails CTIC-Cusco2007Presentacion Ruby on Rails CTIC-Cusco2007
Presentacion Ruby on Rails CTIC-Cusco2007
 
API REST conceptos (Rails-api)
API REST conceptos (Rails-api)API REST conceptos (Rails-api)
API REST conceptos (Rails-api)
 
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQLDesarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
 
Presentacion Ruby on Rails en Universidad Autónoma 2009
Presentacion Ruby on Rails en Universidad Autónoma 2009Presentacion Ruby on Rails en Universidad Autónoma 2009
Presentacion Ruby on Rails en Universidad Autónoma 2009
 

Dernier

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 

Dernier (16)

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 

WorkshopCamp Mexico 09 - Uniendo los puntos con Ruby on Rails

  • 1. Uniendo los puntos en Ruby On Rails Rubén Medellín @chubas WorkshopCamp México 25 – 10 – 09 Bajo licencia Creative Commons Attribution-Non-Commercial-Share Alike 2.5
  • 3. Abstraccion es Component es esenciales de las cosas
  • 5.
  • 6. La MAGIA de Rails
  • 7. NO HAY MAGIA Entender muy bien los componentes de Rails
  • 8. ¿Qué es Rails? “Ruby on Rails is a breakthrough in lowering the barriers of entry to programming. Powerful web applications that formerly might have taken weeks or months to develop can be produced in a matter of days.” Tim O'Reilly, fundador de O'Reilly Media
  • 9. Una que me gusta más “Ruby on Rails is astounding. Using it is like watching a kung- fu movie, where a dozen bad-ass frameworks prepare to beat up the little newcomer only to be handed their asses in a variety of imaginative ways.” Nathan Torkington, O'Reilly Program Chair for OSCON
  • 10. Mi propia definición Rails es una plataforma de desarrollo cuyo principal objectivo es eliminar la complejidad innecesaria, haciendo el proceso más ágil y al desarrollador más feliz
  • 11. La “magia” de Ruby on Rails está en sus principios: • Convention over configuration • Complex framework, simple logic • Test, then code • Don't repeat yourself • Don't reinvent the wheel • entre otros
  • 12. MVC en Rails ActiveRecord + ActionController + ActionView
  • 13. ActiveRecord ORM – Object Relational Mapper Database agnostic
  • 14. Modelos CRUD • save, save! • new, create, create! • delete • find, find_by_*
  • 15. Modelos Relación entre entidades • has_many • belongs_to • has_and_belongs_to_many
  • 16. Modelos Validación y procesamiento  Validaciones  Callbacks / Observadores
  • 18. Controladores Recibe peticiones Accede a los modelos Prepara una respuesta (generalmente una vista)
  • 19. Rutas En base a regexps + opciones url_for / rutas nombradas REST
  • 20. Controladores Se dividen en acciones Fat models, thin controllers
  • 21. Controladores Tienen acceso al objeto request y sus atributos Headers, cookies, sesión, parámetros (GET o POST), response Filtros y wrappers Se encargan de preparar la respuesta
  • 22. Respuesta Por convención, rails regresará una vista con el nombre de la acción Se puede regresar otra vista, datos (archivos, streams), redirecciones, errores, AJAX
  • 23. ActionView •Sistema de templates •Accede a las variables y datos pasados por el controlador •La menor lógica posible en las vistas
  • 24. Pero eso no es todo... La arquitectura Rails es altamente escalable • PLUGINS / GEMAS
  • 25. Plugins para: •OpenID •Autenticación •Control de acceso •Roles •Paginación •APIs externas •(Twitter, Youtube, flickr, google maps) •Búsqueda (sphinx, ferret) •Vistas •Formas •CSS