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

Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Curso de Arquitectura de Android

Curso de Arquitectura de Android

Anahí Salgado Díaz de la Vega

Anahí Salgado Díaz de la Vega

MVVM Data Binding: integrando ViewModel a View

23/30
Recursos

Aportes 12

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

La dependencia a la que se hace referencia en la clase es

implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'

hace falta una clase para explicar esta clase.
cuando estan presentando contenido nuevo estaria bueno que hagan una hoja de ruta de lo que se va a hacer, entonces envitarian las idas y vueltas; escribir codigo y comentarlo por que “despues va a funcionar”; y demas versiones orales de “spagetti code” … si, tildenme de hater, pero ya vengo viendo esto hace rato y sospecho que la idea de Platzi es ahorrar en preparar las clases como corresponde o presionar a los “docentes” con death lines imposibles de cumplir

ViewModelProviders is deprecated use instead
ViewModelProvider.NewInstanceFactory().create(CouponViewModel::class.java)

en la ultima actualizacion de Android Studio estas son las ultimas lineas de codigo:


    fun setupBindings (savedInstanceState: Bundle?){
        var activityMainBinding: ActivityMainBinding= DataBindingUtil.setContentView(this, R.layout.activity_main)
        couponViewModel = ViewModelProvider.NewInstanceFactory().create(CouponViewModel::class.java)
        activityMainBinding.model

Encontre esta pequeña definicion sobre Layout Manager o Administradores de Diseño:
Los administradores de diseño son componentes de software que se utilizan en kits de herramientas de widgets que tienen la capacidad de diseñar elementos de control gráficos por sus posiciones relativas sin usar unidades de distancia.

Si les aparece que ViewModelProviders está obsoleto (Deprecated), usen la clase ViewModelProvider de esta manera:

couponsViewModel = ViewModelProvider(this)[CouponViewModel::class.java]

O también:

couponsViewModel = ViewModelProvider(this).get(CouponViewModel::class.java)

La primera forma es usando el operador [] de Kotlin

En IntelliJ no encontré la opción de Convert to data binding layout. Tuve que instalar el plugin Databinging Convert e ir al menú Code > Databinging Convert. Si se quiere hacer manual, envolver el elemento <**Layout> con <layout xmlns:android=“http://schemas.android.com/apk/res/android” xmlns:tools="http://schemas.android.com/tools"
xmlns:app=“http://schemas.android.com/apk/res-auto”> </layout>

a veces no funciona

donde esta el adapter? que me perdi? para que sirve el adapter?

cuantos layouts tiene un recivlerView?

// comentemos esto y sigamos con otra cosa. perdon, pero si vamos a necesitar importar esa libreria, por que no lo hicimos al principio?

la implementacion al 22-02-21
implementation ‘androidx.lifecycle:lifecycle-extensions:2.2.0’