Arquitectura de Software

1

Arquitectura en Android

2

Patrón de diseño vs. Arquitectura de Diseño

3

¿Qué es la Arquitectura de Diseño?

4

SOLID: Single Responsability y Open/Closed Principles

5

SOLID: Liskov substitution, Interface segregation y Dependency Inversion principle

6

Evolución de la Arquitectura en Android

Arquitectura Model View Controller (MVC)

7

¿Qué es la aquitectura Model View Controller (MVC)?

8

MVC en un Proyecto Android: Analizando el código en capas

9

MVC en un Proyecto Android: Llevando el código a sus responsabilidades

Arquitectura Model View Presenter (MVP)

10

¿Qué es la aquitectura Model View Presenter (MVP)?

11

¿Qué es Clean Architecture?

12

Composición en Clases

13

Model View Presenter explicado

14

Capa Model

15

MVP en un Proyecto Android: Presenters y Views

16

MVP en un Proyecto Android: Model

17

Ubicando el código en MVP

Arquitectura Model View ViewModel (MVVM)

18

¿Qué es la arquitectura Model View ViewModel (MVVM)?

19

¿Cómo funciona MVVM Data Binding?

20

MVVM Data Binding estructurando nuestra aplicación y migrando a AndriodX

21

MVVM DataBinding creando un ViewModel

22

Patron Observer en MVVM

23

MVVM Data Binding: integrando ViewModel a View

24

MVVM Data Binding: RecyclerView Adapter

25

MVVM Data Binding: RecyclerView CardView

Android JetPack Arquitectura

26

¿Qué es Android JetPack Arquitectura?

27

¿Cómo funciona la arquitectura de componentes?

28

Arquitectura Componentes Lifecycle ViewModel

29

Arquitectura Componentes Lifecycle Observe

Fin del curso

30

Conclusiones

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso de Arquitectura de Android

Curso de Arquitectura de Android

Anahí Salgado Díaz de la Vega

Anahí Salgado Díaz de la Vega

¿Qué es la arquitectura Model View ViewModel (MVVM)?

18/30
Recursos

En general la arquitectura MVVM es diferente a MVP porque en esta arquitectura vamos a necesitar que los datos se estén manejando de una forma más automatizada y mucho más real time. Podemos usar varias versiones MVVM, una de ellas es data binding que es de las más antiguas y existen en muchos otros frameworks como .NET de Microsoft. También tenemos a Live data y RxJava o RxAndroid que son características de la programación reactiva que podemos utilizar para hacer la actualización de datos en tiempo real.

Aportes 15

Preguntas 1

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.

Para los que llegan a esta clase les sugiero que se vayan directamente a la clase 26-29, hay una explicación consisa sobre Android JetPack y la explicación de los componentes que esto trae. Anahí brinda unos ejemplos más sencillos que nos permitirán enterder mejor esta arquitectura (ViewModel, LiveData, LifeCycle) con el ejemplo de los cupones. Personalmente me costó entender esto a la primera y con esos ejemplo del final me hubiera ayudado mucho. De hecho esas explicaciones deberían estar antes de empezar con la arquitectura del ejemplo de los Cupones. Espero que a alguno le pueda servir esta sugerencia

MVVM(Model-View-View-Model): Practicamente es un patron de arquitectura, se divide en 3 secciones:

  • Logica de negocio: que es nuestro modelo donde hay objetos
  • Logica de presentacion o viewModel: este es un intercomunicador para la interfaz de usuario y los datos que tengamos o el modelo
  • Interfaz de usuario: Es toda la vista para el usuario

En resumen:
 Es una forma automatizada y en tiempo real, y para ello se pueden usar las siguientes versiones:
• Data Binding, Live Data y RxJava o RxAndroid

En lo personal solo he utilizado MVVM en lo que llevo desarrollando en Android, y a lo que he podido ver en este curso, vaya que ha sido un gran acierto, todos los proyectos se vuelven más limpios, testeables y fáciles de manejar y mantener

Observerber 😄

Excelente, muy interesante!

creo que si es mejor consultar la documentación oficial de android , que video cursos, mucha oración pero poca acción

Mucha oratoria y poca acción

No se que tan viable sea hacer una app con mvvm recargar la vista con variables es mucho mas optimizado mvp

Excelente, muy interesante que en esta actectura se usen menos archivos que en la MVP

en mi opinión me parece mas fácil de implementar el MVVM que el MVP

Que genial!!

Arquitectura MVVM

Secciones del MVVM:

View: Activitys/Fragments

ViewModel: ViewModels

Model: Respository -> DB || ApiRest

Pedir los datos
view->ViewModel->Model->DB || ApiRest

Regreso de datos
Model->Observer->ViewModel->View

Para mantener la actualización de datos se pueden usar :

View-> Data binding

ViewModel -> LiveData || RxJava || Asynctask

Muy interesante la arquitectura de MVVM