16
TALKS 4 KIDS

MvvmCross en Talks4Kids 2015

Embed Size (px)

Citation preview

Page 1: MvvmCross en Talks4Kids 2015

TALKS 4 KIDS

Page 2: MvvmCross en Talks4Kids 2015

TALKS 4 KIDS 2015 con Fundación Theodora

Page 3: MvvmCross en Talks4Kids 2015

Patrocinadores

Colabora

Page 4: MvvmCross en Talks4Kids 2015

TALKS 4 KIDS

MvvMCross para dominarlos a

todosRafa Serna Medina@[email protected]

Page 5: MvvmCross en Talks4Kids 2015

Istar en La Tierra Media.

Organizador de grupos itinerantes.Mago Blanco en proceso de convalidación@[email protected]

Gandalf (Mithrandir)

Page 6: MvvmCross en Talks4Kids 2015

Product Manager en SDM ProgramasMVP Windows Platform Development.Nokia Developer Champion

@[email protected]

Rafa Serna Medina

Page 7: MvvmCross en Talks4Kids 2015

Mvx es un framework gratuito y open source

Soporta múltiples plataformas:• WPF• MAC• Windows Phone• Windows Store• iOS• Android

MvvMCross conocido como Mvx

Page 8: MvvmCross en Talks4Kids 2015

MVVM en Xamarin classics

Específico de la Plataforma

Cross Platform

View

ViewM

odel

Model

PropiedadesComandos

Notificación de cambios

C#

Models

View View

PCL

Page 9: MvvmCross en Talks4Kids 2015

Parte Comun:

-Creamos una clase que herede de MvxViewModel

-Añadimos las propiedades públicas que necesitamos

-App.cs > Registrar Viewmodels y Servicios

MVVM en Xamarin classics

Page 10: MvvmCross en Talks4Kids 2015

Android:- Crear una clase por vista que herede de MvxActvity

- Sobreescribir OnCreate indicando el layout asociado

- El enlace entre View y ViewModel se realiza por convención de nombre- HomeView HomeViewModel- También podemos forzar la ViewModel con el atributo MvxViewFor

- [MvxViewFor(typeof(FirstViewModel))]

- Añadimos un layout AXML de Android y creamos los enlaces de la UI

MVVM en Xamarin classics

Page 11: MvvmCross en Talks4Kids 2015

iOS:- Crear una clase por vista que herede de MvxViewController

- Sobreescribir ViewDidLoad y crear la Interfaz por código c#var textEditFirst = new UITextField(new RectangleF(0, 0, 320, 40));var set = this.CreateBindingSet<FirstView, FirstViewModel>();set.Bind(textEditFirst).To(vm => vm.FirstName);

- El enlace entre View y ViewModel se realiza por convención de nombre- HomeView HomeViewModel- También podemos forzar la ViewModel con el atributo MvxViewFor

- [MvxViewFor(typeof(FirstViewModel))]

MVVM en Xamarin classics

Page 12: MvvmCross en Talks4Kids 2015

Windows Store/Windows Phone:- Crear páginas que hereden de

MvxWindowsPage/MvxPhonePage

- Usar bindings con expresiones XAML

- El enlace entre View y ViewModel se realiza por convención de nombre- HomeView HomeViewModel

- También podemos forzar la ViewModel con el atributo MvxViewFor- [MvxViewFor(typeof(FirstViewModel))]

MVVM en Xamarin classics

Page 13: MvvmCross en Talks4Kids 2015

• Inyección de dependencias. (Mvx.Register<>, CreatableType(), Mvx.IocConstruct<>())

• Notificaciones de cambios: RaisePropertyChanged(() =>)

• Objetos bindeables en Android e iOS (<Mvx.MvxListView />)- MvxBind:

• Comandos: MvxCommand

• Navegación: ShowViewModel<>

MVVM en Xamarin classics

Page 14: MvvmCross en Talks4Kids 2015

DEMO TIME!!

Page 15: MvvmCross en Talks4Kids 2015

GRACIAS !!

Page 16: MvvmCross en Talks4Kids 2015

Agenda

09:30 – 09:45

Keynote Josue Yeray

09:45 – 10:15

Windows 10: La comunidad del core Ruben Fernandez

10:15 – 10:45

The Big Cloud Theory Alejandro Campos

10:45 – 11:15

Bailando con monos Josue Yeray

11:15 – 11:45

Coding4Fun 2.4 Bruno Capuano

11:45 – 12:15

Consejos Heisenberg para conseguir Apps Win10 con 99% de pureza

Javier Suarez

12:15 – 12:30

DESCANSO

12:30 – 13:00

El lado oscuro de la nube Alberto Diaz

13:00 – 13:30

MVVMCross para gobernarlos a todos Rafa Serna

13:30 – 14:00

Por qué los Espartanos molan y Gerges debe morir Santiago Porras

14:00 – 14:30

Confía en la fuerza Luke Ciani Afonso