Está en la página 1de 5

Introduccin al ASP.

NET MVC | Cup Coffee

http://cup-coffe.blogspot.com.ar/2010/02/introduccion-al-aspnet-mvc.html

Cup Coffee
Una taza de caf endulzada con mucha informacin

PGINA PRINCIPAL

Search...

SEARCH

14
DOMINGO,

Introduccin al ASP.NET MVC


Sobre el Autor

Entendiendo la arquitectura Modelo-Vista-Controlador para ASP.NET MVC El modelo vista controlador es una arquitectura nacida all por los aos 70s en el departamento de investigacin de XEROX PARC, en su concepcin estuvo ligado con SmallTalk un lenguaje orientado a objetos. Con el pasar de los aos esta arquitectura ha sido implementada en varios Frameworks para distintas reas. Para el caso particular de nuestro articulo y como el nombre lo dice voy a enfocar la explicacin sobre el Framework MVC para ASP.NET, esta implementacin de la arquitectura Modelo-Vista-Controlador tiene aspectos particulares sobre como implementa la arquitectura, por lo cual puede que existan ligera variaciones respecto a otras implementaciones. Separacin de Ocupaciones (Concerns) La separacin de ocupaciones es uno de los pilares que definen la arquitectura Modelo-Vista-Controlador, definiendo tres capas o niveles que son: Modelo.- Esta capa se ocupa o maneja todo lo concerniente a los tems, reglas y operaciones relacionadas al problema en cuestin, que debe de resolver nuestra aplicacin, por ejemplo si nuestro problema es el manejo de personal de una empresa, en esta capa es donde nosotros debemos de definir las reglas de negocios como por ejemplo los descuentos por retrasos o inasistencia o tambin como se contabilizan los das de vacaciones. Vista.- Esta es la capa de la Interfaz Grafica del Usuario (UI), aqu definimos como se deber de desplegar los datos manejados por la capa del modelo, entradas y salidas. Controlador.- La capa controlador es quien maneja las peticiones del usuario, en base a estas peticiones llama a las distintas partes asociadas en el modelo y despliega una vista adecuada. Con esta divisin tan interesante de asuntos (concerns), nos permite que la capa ocupada de la vista pueda se cambiada cuando uno quiera por cualquier otra tecnologa (HTML, Silverlighth, etc) sin tener que mover ni el modelo ni el controlador, tambin al estar separada la funcin del manejo de las peticiones a travs de la capa controlador nos permite automatizar los tests a travs de Unit Tests. Cmo funciona el Modelo Vista Controlador? Para comenzar un mtodo publico de la clase controlador es llamado a travs de una URL por el navegador (azul) despus este mtodo llama a alguna funcin del modelo de nuestro sistema y recibe una respuesta (rojo), luego con esta respuesta el controlador llama a algn mtodo de la clase vista, el mtodo de la clase vista a su vez genera cdigo html y lo enva de vuelta al navegador (morado), como se puede ver es un proceso simple y lgico que ayuda a una buena separacin de ocupaciones, permitiendo una desacoplamiento optimo de componentes.

Gustavo Torrico Martinez


89

Developer, lover of .NET and Mono Technologies like Silverlight, ASP.NET MVC, C#, WPF, MonoMac, MonoTouch, Windows Phone, Mono for Android and Moonlight. Ver todo mi perfil

Archivo por Fechas


2013 (3) 2012 (33) 2011 (15) 2010 (8) octubre (1) septiembre (2) mayo (2) abril (1) febrero (2) Introduccin al ASP.NET MVC

ASP.NET MVC ASP.NET MVC es una implementacin reciente de la arquitectura Modelo-Vista-Controlador sobre la base ya existente del Framework ASP.NET otorgndonos de esta manera un sin fin de funciones que son parte del ecosistema del Framework .NET, adems que nos permite el uso de lenguajes de programacin robustos como C#, no menciono VB.NET por que no es santo de mi devocin, inclusive me parece un lenguaje un tanto endeble a pesar de que posee muchas funciones parecidas a C#, pero eso es material para otro articulo. ASP.NET MVC nace como una opcin para hacer frente al ya consagrado y alabado Ruby on Rails un framework que procura hacer uso de buenas practicas de programacin como la integracin de Unit tests o la separacin clara de ocupaciones, dndonos casi todos los beneficios otorgados por Ruby on Rails y sumando el gran y prolijo arsenal proporcionado por .NET. Entre las caractersticas ms destacables de ASP.NET MVC tenemos las siguientes: - Uso del patrn Modelo-Vista-Controlador. - Facilidad para el uso de Unit Tests. - Uso correcto de estndares Web y REST. - Sistema eficiente de routing de links. - Control a fondo del HTML generado. - Uso de las mejores partes de ASP.NET. - Es Open Source. ASP.NET MVC es mejor que ASP.NET tradicional? Este es un tema un poco lgido, inclusive para la gente de Microsoft por que si se fijan bien en la prxima actualizacin grande de .NET (4.0) tanto ASP.NET MVC y el ASP.NET tradicional van a convivir poniendo al descubierto que ASP.NET MVC no va reemplaza al ASP.NET tradicional e indicndonos que ambas tecnologas son alternativas una con otra, ante esto una pregunta mas adecuada seria En que mbitos es mejor usar ASP.NET MVC en reemplazo al ASP.NET tradicional?, esta pregunta se responde fcilmente,

Crear una aplicacion Android en Netbeans 2009 (14)

Tags Interesantes

.NeT (29)
ASP.NET (7) ASP.NET

MVC (11)
Hacks (8)

C# (9) Iphone (11)


Java (5) Jquery (4) Json (4) Mac (7)

Mono (16) Monotouch (11) MVC (7) MVC 3 (9) MVC3 (9)

1 de 5

19/03/2014 01:19 p.m.

Introduccin al ASP.NET MVC | Cup Coffee

http://cup-coffe.blogspot.com.ar/2010/02/introduccion-al-aspnet-mvc.html

ASP.NET MVC lo deberamos usar cuando tengamos que hacer un SW que sea de gran envergadura y en donde la mantenibilidad y escalabilidad sean factor primordiales, en contraste deberamos de usar ASP.NET tradicional cuando hagamos aplicaciones simples donde el factor primordial sea el tiempo. Desde mi punto de vista ASP.NET tradicional es una tecnologa pasada de moda, con muchas falencias que debera dejarse en el pasado, como ejemplo les pongo como ejemplo una experiencia, esto se suscito hace unos cuantos meses cuando yo aun no sabia desarrollar con ASP.NET MVC, el trabajo que me asignaron en la Universidad consista en desarrollar un pequeo sitio de venta de computadoras para lo cual me asignaron el tiempo de 3 semanas, en un principio relativizando el trabajo gracias a que semanas antes hice un sitio parecido en PHP en menos de una semana, cuando llego el momento de programar el trabajo empez mi martirio, ASP .NET no me permita integrar fcilmente Unit Test, el cdigo HTML generado por los controles era psimo e ilegible y no digamos nada del Debugging, sumado a eso problemas que se podran denominar tcnicos, se sumaron los problemas concernientes a la capa del dominio, gracias a que con el ASP.NET tradicional se hace muy difcil el separar las operaciones propias de las polticas del negocio con las operaciones tcnicas o de implementacin, con todo eso en mente para mi el ASP.NET tradicional no tendria que ser usado para crear aplicaciones de gran tamao, que requieran un mantenimiento constante. Bueno con esta breve expiacin de cmo funciona el patrn Modelo-Vista-Controlador y que es ASP.NET MVC me despido hasta la prxima. Bye PD.- Aqui tienen un ejemplo de una aplicacion simple que hice con ASP.NET MVC 3 Publicado por Gustavo Torrico Martinez en 16:33 Etiquetas: .NeT, ASP.NET, ASP.NET MVC, MVC, MVC 3, MVC3

WPF (7)

19 comentarios:
Annimo dijo... No estoy de acuerdo con que asp.net tradicional es solo para aplicaciones minsculas. Creo que es muy absoluto tu criterio. Aunque ASP.NET MVC mejora y pone a tono a .NET con lo que ya hace hace aos se hace en frameworks como Django.
11 de marzo de 2010, 10:01

Gustavo dijo... Tienes razon me excedi un poco en mi criterio y viendolo un poco mejor, ahora diria que el ASP.NET tradicional puede ser usado para crear hasta aplicaciones de envergadura mediana, pero mas de eso no lo recomendaria. Gracias por la observacion
17 de marzo de 2010, 11:14

Annimo dijo... Porque no usar mvc para todo?, cuando aprendes bien a trabajar con el patron mvc automaticamente creas la arquitectura conforme a este patron. La experiencia me ha dicho que cuando hacen comentarios como el tuyo es que aun no dominan bien los patrones, por eso se les dificulta trabajar asi.
23 de marzo de 2010, 17:48

Gustavo dijo... Ahh la verdad, no puedo decir que soy un herudito en mvc, un tanto el hecho de escribir este blog es para que yo mismo aprenda. Pero aun asi apartando el hecho de dominar o no el patron creo que el hecho de usarlo en todo depende de cada uno, como los gustos y para los gustos los colores y en 32 bits =). Gracias por los comentarios, y por favor pongan sus nicks para los proximos comentarios.
24 de marzo de 2010, 10:35

Ryu dijo... Interesante blog... Tengo un proyecto en el que el sistema a programar debe permitir a un director de un hospital acceder a las consultas hechas por los mdicos a sus pacientes. ASP.NET (tradicional o MVC) me permite hacer esto?

2 de 5

19/03/2014 01:19 p.m.

Introduccin al ASP.NET MVC | Cup Coffee

http://cup-coffe.blogspot.com.ar/2010/02/introduccion-al-aspnet-mvc.html

24 de marzo de 2010, 21:51

Gustavo dijo... Ambas tecnologias te permiten hacer eso, pero la que te recomendaria seria ASP.NET MVC ya que estoy seguro que les va a servir de ayuda a los del hospital y te van a pedir nuevas caracteristicas y como viste el ASP.NET MVC esta hecho para crecer rapidamente.
25 de marzo de 2010, 8:28

Annimo dijo... como puedo conectar un proyecto mvc con otra wcf???
20 de mayo de 2010, 15:01

edgar pineda dijo... Buenas tardes, Me encuentro ubicado en Medellin y quisiera saber como puedo acceder al conocimiento de esta herramienta ASP, ya que en mi dia a dia en la empresa donde laboro seria muy util poder poner en funcionamiento esta herramienta aplicada muchos procesos.

mil gracias, quedo atento de sus comentarios al respecto. Att. Edgar Pineda
23 de junio de 2010, 12:36

Gustavo dijo... Edgar para poder trabajar con APS.NET MVC puedes bajarte el Visual Studio 2010 de http://www.microsoft.com/visualstudio/en-us/download que contiene todas las herramientas necesarias para que te puedas poner a desarrollar.
23 de junio de 2010, 14:30

Adrian Bordones dijo... Saludos amigos!!! Tengo aos programando, pero tengo una pequea consulta... El Modelo MVC depende de alguna plataforma especfica para poder programar en l? A ver si me doy a entender... Si deseo programar una aplicacin de consola, abro mi Notepad de Windows y edito un cdigo y lo compilo con el framework, que es GRATUITO! por ahora. Si quiero hacer una pgina aspx, tambien la edito en mi Notepad y la cuelgo del IIS en un directorio virtual y chaz! tengo una pgina web que accesa y administra datos... Pero mi duda radica en que, si quiero disear o trabajar con el MVC, podra generarla sin necesidad del visual studio, solo con el framework?
27 de agosto de 2010, 11:02

Gustavo dijo... Hola Adrian, claro que puedes usar solo el Compilador por linea de comandos,ya que solo la parte del controlador y el modelo son compilados. Pero si quieres trabajar con productos sin costo, por que no pruebas la version express de Visual C# o Visual Web Developer. Los puedes encontrar aqui: http://www.microsoft.com/express/windows/ Bueno ojala te sirva
30 de agosto de 2010, 15:37

Ariel dijo... Estimado: Yo quiero aprender a programar en c# utilizando el patron mvc. Mi consulta es que necesito (libros, sitios, etc)

3 de 5

19/03/2014 01:19 p.m.

Introduccin al ASP.NET MVC | Cup Coffee

http://cup-coffe.blogspot.com.ar/2010/02/introduccion-al-aspnet-mvc.html

Para lograrlo...... Quiero hacer sitios web, aplicaciones web, etc. Gracias.
28 de septiembre de 2010, 14:43

Gustavo dijo... Hola Ariel, que bien que te haya gustado esta hermosa tecnologia traida de la mano de microsoft. Si quieres aprender ASP.NET MVC te sugiero el siguiente libro: - PRO ASP.NET MVC de Steven Sanderson En cuanto a sitios web, te sugiero el sitio oficial de ASP.NET MVC (www.asp.net), donde hay un monton de documentacion, lamentablemente (si no sabes ingles) todos los recursos que te sugiero estan en ingles, si deseas contenido en espaniol deberas buscar un buen rato en google o bing.
1 de octubre de 2010, 22:12

Annimo dijo... Agn da explicars porqu VB.NET es un lenguaje un tanto endeble (si puedes ...) Algo as como: Lo que puede hacerse con C# pero no con VB.NET
13 de junio de 2011, 17:25

jesus garcia dijo... Y LO MEJOR ES CUANDO LO CONVINAS CON JQGRID Y JQUERY QDAN IMPRESIONANTES Y SE AHORRA MUCHO TIEMPO AL CREAR CATALOGOS
12 de julio de 2011, 22:08

Annimo dijo... Una pregunta: Se puede comunicar la vista con el modelo directamente? Si tengo un grid en el formulario que necesita unos datos de la BD puede pedirselo directamente
3 de agosto de 2011, 7:15

Annimo dijo... Estoy interesado en el desarrollo MVC, pero lo que no me parece es que el diseo de vitas se tenga que hacer por codigo. Eso me parece un retroceso o al menos una limitante, para quienes por ejemmplo veniasmos de VB6.0.
16 de agosto de 2011, 7:23

Jorge Toriz dijo... No creo que sea una buena idea utilizar MVC para todo, dado que hay sistemas muy sencillos cuyo tiempo de elaboracin requerido es nfimo.

Definitivamente coincido contigo en el punto de que sistemas complejos tienen en MVC una excelente opcin.
14 de febrero de 2012, 17:57

Luis Alberto Guerra Luis dijo... Google Android Open Handheld platform, no puedo ver lo por que ser, que estoy haciendo mal
27 de febrero de 2012, 21:32

Publicar un comentario en la entrada

4 de 5

19/03/2014 01:19 p.m.

Introduccin al ASP.NET MVC | Cup Coffee

http://cup-coffe.blogspot.com.ar/2010/02/introduccion-al-aspnet-mvc.html

Comentar como:

Publicar

Entrada ms reciente Suscribirse a: Enviar comentarios (Atom)

Pgina principal

Entrada antigua

Copyright (c) 2010 Cup Coffee. Design by WP Themes Expert


Blogger Templates And VPS Hosting.

5 de 5

19/03/2014 01:19 p.m.