Vanguarsoft Developers blog

Ing. Javier Leal -Desarrollador CPANAX C.A / Microsoft Student Partners – VENEZUELA

Porque Usar MVVM en Silverlight

5 comentarios

imageMuchos desarrolladores de las viajes décadas y aun los estudiantes que vienen iniciando en el desarrollo aprenden una tecnología de una manera y creen que les estamos complicando las cosas cuando le decimos cosas como: por que no usas un patrón arquitectónico? Y ellos a veces creen que sea una complicación, todo patrón de diseño tiene su fin y es la organización de código, la fácil comprensión y reutilización de código, en silverlight muchos desarrolladores comienzan con la facilidad de dar doble click al botón e iniciar a hacer su código terminando a fin de cuentas con el famoso llamado código espagueti.

La programación en capas te permite distribuir tu aplicación ordenadamente y te permite que al momento de cada modificación saber donde se encuentro el código necesario.

Lo que significa (Model View ViewModel) MVVM

(Model) M. Representa en la aplicación todo enlace a datos, entidades que llegan en caso de silverlight desde un servicio.

(View) V. Representa la Interfaz grafica de la aplicación, la vista donde se mostraran los resultados de los datos.

(ViewModel) VM. Es por decirlo así la interfaz entre el Model y la View y contiene toda la logia de negocio de la aplicación, se caracteriza por implementar una interfaz de notificación de cambio que recibe la vista a través de Binding.

image

Pero la verdadera pregunta es por que usarlo?? la respuesta ya las venia dando cuando les hable sobre los patrones de diseño pero veamos unos casos:

1. desarrollamos una aplicación y vemos que los pantallas necesitan los mismos datos ¿?? que haces?? Escribes dos veces el mismo código en cada pantalla???? o no seria mejor instancia el model que tiene esos datos y reutilizar el código que tiene esos datos desde el viewmodel de cada pantalla y mostrarlos en 1,2,3 pantalla.

2. Si tienes una aplicación con mas de 30 pantallas diferentes vas a tener en lada archivo de código la logia de negocio junto con de enlace de datos??? eso serian muchas línea de código por cada pantalla y al momento de querer buscar para hacer una modificación se hace engorroso para el desarrollador.

creo que esas dos razones con mas que suficientes para comenzar a entrenarte y convertir tus aplicación Silverlight a aplicación aplicadas a un patrón arquitectónico, existen varias librería para trabajar con mvvm que ya tienes sus implementaciones bases.

Herramientas MVVM:

Simple MVVM

http://simplemvvmtoolkit.codeplex.com/

MVVM Light

http://www.galasoft.ch/mvvm/

Core MVVM

http://coremvvm.codeplex.com/

MVVM Fundation

http://mvvmfoundation.codeplex.com/

Galasoft es una de las MÁS usadas y les puedo ofrecer una lista de pasos para implementar en patrón en una aplicación:

La liga Silverlight Publico una seria de 6 Artículos sobre MVVM basado en Galasoft espero que les sirva para aprender de la implementación del patrón:

1. http://blogs.ligasilverlight.com/2011/08/mvvm-light-toolkit-desde-cero-paso-1/

2. http://blogs.ligasilverlight.com/2011/08/mvvm-light-toolkit-desde-cero-paso-2/

3. http://blogs.ligasilverlight.com/2011/08/mvvm-light-toolkit-desde-cero-paso-3/

4. http://zitrodan.wordpress.com/2011/07/21/mvvm-light-toolkit-desde-cero-paso-4/

5. http://blogs.ligasilverlight.com/2011/08/mvvm-light-toolkit-desde-cero-paso-5/

6. http://blogs.ligasilverlight.com/2011/08/mvvm-light-toolkit-desde-cero-paso-6/

Autor: Ing. Javier J. Leal H.

Desarrollador en CPANAX C.A, Microsoft Student Partners de Venezuela Amantes de nuevas Tecnologías Desarrollador es Silverlight 5, Windows 8, Windows Phone, Influenciador y Orador en Actividades Tecnológicas Microsoft

5 pensamientos en “Porque Usar MVVM en Silverlight

  1. Hola, me gusto mucho la propuesta de programar para windows Phone 7.1 y me gustaria que visitaras mi pagina: url : http://www.wix.com/telesystem/telesystem y mi blog: http://juanmancilla.wordpress.com yo tambien publico temas relacionados con VS.net 2010 y cualquier cosa me comentas.

    Saludos!!!!

  2. Pingback: Agenda de la Comunidad « MSExpertos

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s