![Page 1: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/1.jpg)
Ruby on RailsEl desarrollo web que no duele
Por Nelson Rojas Núñez
![Page 2: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/2.jpg)
¿Quién soy?
![Page 3: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/3.jpg)
+ Ingeniero de Ejecución en Computación e Informática (UCM)+ Desarrollador (45hrs)+ Docente vespertino+ Webmaster www.linares.cl*
![Page 4: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/4.jpg)
¿Qué es Ruby on Rails?
![Page 5: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/5.jpg)
+ Es un framework de desarrollo construido en lenguaje Ruby
+ Permite construir aplicaciones web que usan bases de datos
![Page 6: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/6.jpg)
¿Acaso no hay muchos
frameworks que hacen lo mismo?
![Page 7: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/7.jpg)
¿Qué tal si te digo que puedes construir tu aplicación 10 veces
más rápido que con un típico framework Java?
![Page 8: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/8.jpg)
Y por cierto, ¡sin sacrificar la calidad
de la aplicación!
![Page 9: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/9.jpg)
¿Cómo puede ser eso posible?
![Page 10: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/10.jpg)
RUBY
“Rails es la aplicación de ruby”Yukihiro Matsumoto (matz)
creador de ruby
![Page 11: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/11.jpg)
Filosofía
+ Menos código
+ Convenciones sobre configuraciones
+ Separación de código según MVC
![Page 12: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/12.jpg)
Menos código
+ La aplicación en pocas líneas+ Acelera el desarrollo+ Reduce los errores+ Más simple de entender, mantener y mejorar
![Page 13: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/13.jpg)
DRYDon't repeat yourself
![Page 14: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/14.jpg)
Convenciones sobre configuraciones
+ En vez de usar XML para configurarlo todo, mejor tomamos ciertos acuerdos y trabajamos sobre ellos
![Page 15: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/15.jpg)
Ejemplos de CoC
+ Las tablas tienen nombres en plural (anglo)+ Todas las tablas tienen un campo PK llamado id auto incremental+ El campo FK usa el nombre en singular de la tabla seguido de _id
![Page 16: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/16.jpg)
MVC
+ Modelo+ Vista+ Controlador
![Page 17: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/17.jpg)
Modelo
+ Abstrae los elementos del negocio (tablas)+ Implementa la lógica de negocio+ Establece la relación entre modelos
![Page 18: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/18.jpg)
Vista
+ Es lo que el usuario ve en el navegador (HTML)+ Contiene los gatillos para realizar acciones (enlaces y formularios)
![Page 19: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/19.jpg)
Controlador
+ Realiza las peticiones del usuario+ Responder usando vistas o redirección a otra acción
![Page 20: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/20.jpg)
¡Hay más!
![Page 21: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/21.jpg)
Ruby on Rails es agnóstico en cuanto al motor de base de datos
![Page 22: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/22.jpg)
Puedes usar sin problemas
+ MySQL+ PostgreSQL+ Oracle+ SQL Server+ Sqlite+ MongoDB
![Page 23: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/23.jpg)
El cambio sólo requiere de 1 archivo*
![Page 24: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/24.jpg)
¿SQL?
Nunca más lo usé gracias a CRUD
![Page 25: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/25.jpg)
¿Migración de base de datos?
¿Te imaginas un crecimento regulado y
con versión del esquema de BD?
![Page 26: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/26.jpg)
Herramientas en Ruby on Rails
![Page 27: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/27.jpg)
Tareas automatizadas+ Andamios
+ Controladores+ Modelos
+ Migración BD+ Testing
+ Estadísticas+ Documentación
+ Entre otras
![Page 28: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/28.jpg)
Timeline de RoR
2004Nace Ror
2005Ror 1.0
2007Ror 2.0
2010Ror 3.0
2011Ror 3.1
David Heinemeier HanssonCreador de Ruby on Rails
![Page 29: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/29.jpg)
Hijos ilustres de RoR+ Twitter+ Github
+ Groupon+ OracleMix
+ PragmaticProgrammers+ Tadalist
+ Whiteboard+ Scribd
![Page 30: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/30.jpg)
Novedades en v3+ Sass (Syntactically Awesome
Stylesheets)+ jQuery como estándar
+ CoffeeScript+ Http Streaming
+ Migraciones de bases de datos reversibles
...
![Page 31: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/31.jpg)
Ruby on Rails 3 en acción
![Page 32: Ruby on Rails - Nelson Rojas – Alquimista informático · Ruby on Rails El desarrollo web que no duele Por Nelson Rojas Núñez](https://reader031.vdocuments.mx/reader031/viewer/2022021806/5bc109a809d3f28e288cbf1c/html5/thumbnails/32.jpg)
¿Preguntas?