WorkshopCamp Mexico 09 - Uniendo los puntos con Ruby on Rails - Presentation Transcript
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
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
0 comments
Post a comment