WorkshopCamp Mexico 09 - Uniendo los puntos con Ruby on Rails

880 views

Published on

Presentación de Ruben Medellín en el WorkshopCamp México 09

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
880
On SlideShare
0
From Embeds
0
Number of Embeds
52
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

WorkshopCamp Mexico 09 - Uniendo los puntos con Ruby on Rails

  1. 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
  2. 2. ABSTRACCIONES
  3. 3. Abstraccion es Component es esenciales de las cosas
  4. 4. Modelo web tradicional
  5. 5. La MAGIA de Rails
  6. 6. NO HAY MAGIA Entender muy bien los componentes de Rails
  7. 7. ¿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
  8. 8. 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
  9. 9. 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
  10. 10. 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
  11. 11. MVC en Rails ActiveRecord + ActionController + ActionView
  12. 12. ActiveRecord ORM – Object Relational Mapper Database agnostic
  13. 13. Modelos CRUD • save, save! • new, create, create! • delete • find, find_by_*
  14. 14. Modelos Relación entre entidades • has_many • belongs_to • has_and_belongs_to_many
  15. 15. Modelos Validación y procesamiento  Validaciones  Callbacks / Observadores
  16. 16. ActionController Procesamiento y resolución de peticiones
  17. 17. Controladores Recibe peticiones Accede a los modelos Prepara una respuesta (generalmente una vista)
  18. 18. Rutas En base a regexps + opciones url_for / rutas nombradas REST
  19. 19. Controladores Se dividen en acciones Fat models, thin controllers
  20. 20. 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
  21. 21. 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
  22. 22. ActionView •Sistema de templates •Accede a las variables y datos pasados por el controlador •La menor lógica posible en las vistas
  23. 23. Pero eso no es todo... La arquitectura Rails es altamente escalable • PLUGINS / GEMAS
  24. 24. 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
  25. 25. Taller práctico

×