Successfully reported this slideshow.
Your SlideShare is downloading. ×

El patrón MVC

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
Arquitectura Mvc
Arquitectura Mvc
Loading in …3
×

Check these out next

1 of 25 Ad

El patrón MVC

Download to read offline

¿Qué mejor forma que comenzar el fin de semana que introduciéndote en el mundo de MVC? De mano de uno de nuestros coordinadores, MSP de Miscrosof, ofrecemos un taller en el que se introduce al mundo de los patrones, que permiten organizar mejor tú código, separar la lógica y mejorar el rendimiento.

Para ello, se hablará de uno de los más concocidos: MVC. Se verán ejemplos en dos lenguajes de programación completamente diferentes:

ASP.net
Ruby on Rails

¿Qué mejor forma que comenzar el fin de semana que introduciéndote en el mundo de MVC? De mano de uno de nuestros coordinadores, MSP de Miscrosof, ofrecemos un taller en el que se introduce al mundo de los patrones, que permiten organizar mejor tú código, separar la lógica y mejorar el rendimiento.

Para ello, se hablará de uno de los más concocidos: MVC. Se verán ejemplos en dos lenguajes de programación completamente diferentes:

ASP.net
Ruby on Rails

Advertisement
Advertisement

More Related Content

Slideshows for you (19)

Similar to El patrón MVC (20)

Advertisement

More from Roberto Luis Bisbé (20)

Recently uploaded (20)

Advertisement

El patrón MVC

  1. 1.
  2. 2.
  3. 3. Agenda<br /><ul><li>Qué es MVC (orientado a web)
  4. 4. Ruby onRails
  5. 5. Introducción a Ruby
  6. 6. Scaffolding con Rails
  7. 7. Rails avanzado
  8. 8. ASP.net MVC3
  9. 9. Un vistazo rápido a Razor
  10. 10. Introducción al manejo de vistas
  11. 11. Scaffolding con MVC3
  12. 12. ASP.net avanzado</li></li></ul><li>¿Vale, pero qué vamos a hacer?<br /><ul><li>Crear un sistema de gestión de eventos</li></ul>Evento:<br /><ul><li>Título
  13. 13. Fecha
  14. 14. Descripción
  15. 15. Capacidad
  16. 16. Asistentes (Personas)</li></ul>Persona:<br /><ul><li>Nombre
  17. 17. E-mail</li></li></ul><li>1. Introducción<br />
  18. 18. ¿Qué es MVC?<br /><ul><li>¿Qué es MVC?
  19. 19. Según Wikipedia: patrón de arquitectura de software que separa los datos de una aplicación, la interfaz de usuario, y la lógica de control en tres componentes distintos: Modelo-Vista-Controlador
  20. 20. Para todo tipo de sistemas…
  21. 21. … y de tecnologías (Java, Ruby, Python, Perl, Flex, SmallTalk, .Net…)</li></li></ul><li>Definiendo los roles<br /><ul><li>Representación de los datos del dominio
  22. 22. Lógica de negocio
  23. 23. Mecanismos de persistencia</li></ul>M<br />Modelo<br />V<br />Vista<br /><ul><li>Interfazde usuario
  24. 24. Elementos de interacción
  25. 25. Intermediario entre Modelo y Vista
  26. 26. Mapea acciones de usuario  acciones del Modelo
  27. 27. Seleccionalas vistas y les suministrainformación</li></ul>C<br />Controlador<br />
  28. 28. Ejemplo de uso<br />C<br />Controlador<br />M<br />Modelo<br />V<br />Vista<br />Crear evento (datos) <br />evt= new Evento()// cargar propiedades<br />CrearEvento(evt)<br />Ok<br />ListarEventos()<br />Evento[]<br />Ejecutar vista(«Eventos», Evento[])<br />HTML<br />
  29. 29. 2. Ruby onRails<br />
  30. 30. Os presento a Ruby<br />Encantado!<br /><ul><li>Interpretado</li></ul>irb(main):001:0> puts «Hola Mundo»<br />Hola Mundo<br />=> nil<br /><ul><li>Dinámico
  31. 31. Orientado a Objetos</li></ul>irb(main):001:0> a = 16<br />=> 16<br />irb(main):001:0> puts a<br />16<br />=> nil<br />classanfitrion<br />definitialize(nombre = "Mundo")<br /> @nombre = nombre<br />end<br />defdecir_hola<br />puts"Hola #{@nombre}"<br />end<br />end<br />
  32. 32. Una clase con detalles<br />classanfitrion<br />definitialize(nombres = "Mundo")<br /> @nombres = nombres<br />end<br />defdecir_hola<br />if@nombres.nil?<br />puts"..."<br />elsif@nombres.respond_to?("each")<br /> @nombres.each do |nombre|<br />puts"Hola #{nombre}"<br />else<br />puts"Hola #{@nombres}"<br />end<br />end<br />end<br />
  33. 33. Cómo crear una web en 4 pasos<br />Inicializar el sitio<br />Definir el modelo y generar las vistas y el controlador<br />Generar la base de datos<br />Play!<br />
  34. 34. Hemos creado una web en 4 pasos<br />rails new demo<br />railsgeneratescaffold<br /><ul><li>evento titulo:stringfecha:datedescripcion:textcapacidad:integer
  35. 35. persona evento_id:intnombre:stringemail:string</li></ul>rakedb:migrate<br />rails server<br />
  36. 36. Vamos a agregar más cosas<br />Relaciones<br /><ul><li>Relacionar evento con asistentes</li></ul>Validación<br /><ul><li>Capacidad de las aulas
  37. 37. Presencia del nombre, del e-mail y que no haya mails repetidos por evento</li></li></ul><li>Resumen<br />Ruby mola!<br />Hemos definido un sitio básico de manera sencilla usando scaffolding<br />Hemos agregado relaciones y validación<br />
  38. 38. 3. ASP.net MVC3<br />
  39. 39. Acerca de ASP.net MVC<br /><ul><li>Open Source
  40. 40. Sobre ASP.net
  41. 41. Backend: Visual Basic o C#
  42. 42. Frontend: Razor</li></li></ul><li>¿Razor?<br />Motor de visualización poco intrusivo<br /><ul> <br /> @for (var i = 0; i < 5; i++)<br /> {<br /> <li>@i</li><br /> } <br /></ul><br />@{<br />var name = “Gilberto Salazar”;<br /> <div><br />Nombre: @name<br /> </div><br />}<br />@{ <br /> Layout = "/Shared/_Layout.cshtml";<br />}<br /><p><br />Aquíponemos el contenido<br /></p><br /><html><br />    <head><br />      <title>Simple Layout</title><br />    </head><br />    <body> <br />        @RenderBody()<br /> </body><br /></html><br />
  43. 43. Ejemplo básico<br /><ul><li>Controlador
  44. 44. Definir datos
  45. 45. Vista
  46. 46. Consumir datos</li></li></ul><li>Sitio web sencillo usando scaffolding*<br />Inicializar el sitio<br />Definir el modelo y las relaciones<br />Generar las vistas y el controlador<br />Generar la base de datos<br />Play!<br />
  47. 47. Vamos a agregar más cosas (II)<br />Relaciones<br /><ul><li>Relacionar evento con asistentes
  48. 48. Mostrar los asistentes de un evento</li></ul>Validación<br /><ul><li>Validar la presencia del nombre y del e-mail</li></ul>Helpers<br /><ul><li>Formato a las direcciones de e-mail
  49. 49. Facebook
  50. 50. Twitter</li></li></ul><li>Resumen<br /><ul><li>Creado dos modelos
  51. 51. Agregado relaciones
  52. 52. Agregado validación
  53. 53. Enlazado vistas
  54. 54. Agregada interacción a nuestra web mediante helpers</li></li></ul><li>Recursos<br /><ul><li>Ruby-lang.org
  55. 55. Rubyonrails.org
  56. 56. Railsforzombies.org
  57. 57. Live.visitmix.com
  58. 58. Asp.net/mvc
  59. 59. @rlbisbe
  60. 60. Robertoluis.wordpress.com</li></li></ul><li><ul><li>¿Preguntas?</li></li></ul><li>GRACIAS A TODOS!<br />(que es viernes, y estar aquí tiene mérito!)<br />

×