Inicio > General > Porque Usar MVVM en Silverlight

Porque Usar MVVM en Silverlight

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/

Categorías:General
  1. 17 febrero, 2012 a las 9:35 AM | #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!!!!

    • 9 marzo, 2012 a las 8:29 AM | #2

      Hola Juan

      Muchas gracias por la invitacion estare atento a tus publicaciones

    • miguel
      18 abril, 2012 a las 5:07 PM | #3

      Pues es un articulo muy simple estaria mejor si lo aplicaras a un ejemplo.

      • 20 abril, 2012 a las 8:17 AM | #4

        Ok amigo eso hare, estoy pendiente contigo con eso pero como es mucho codigo hare un screanCast..

  1. 27 marzo, 2012 a las 8:26 PM | #1

Deja un comentario

Fill in your details below or click an icon to log in:

Logo de WordPress.com

You are commenting using your WordPress.com account. Log Out / Cambiar )

Twitter picture

You are commenting using your Twitter account. Log Out / Cambiar )

Facebook photo

You are commenting using your Facebook account. Log Out / Cambiar )

Connecting to %s

Seguir

Get every new post delivered to your Inbox.

Únete a otros 494 seguidores