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

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

8/30
Recursos

Repositorio base del proyecto del curso:

https://github.com/anncode1/Curso-Arquitectura-Android

Aportes 19

Preguntas 3

Ordenar por:

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

por que censuras el apkey si segundos antes no estaba censurado?

Buenas tardes, hay un problema con éste vídeo no termina de cargar, a diferencia de los demás que si van bien.

Hola compañeros comentarles que si no les carga la app se le crashea es debido a la API, sobretodo con la image_url esta retornando un valor vacio, si se registran a la pagina web para tener su podria API la mayoria de tiendas estan cerradas por tanto deberian de condicionar que si la url esta vacia entonces poner una imagen por defecto.

fun setDataCard(coupon: Coupon){
            this.coupon = coupon
            if (coupon.image_url.equals("")){
                imgCoupon.setImageResource(R.drawable.header)
            }else{
                Picasso.get().load(coupon.image_url).resize(520, 520).centerCrop().into(imgCoupon)
            }
            tvTitle.setText(coupon.title)
            tvDescriptionShort.setText(coupon.descriptionShort)
            tvCategory.setText(coupon.category)
            tvDate.setText(coupon.endDate)

        }

Les comparto el proyecto actualizado para que puedan seguir el curso.

Al ejecutar la aplicación , no muestra ningún listado de productos

No se dice librerias, se dice bibliotecas,

La traduccion de library en español es biblioteca.

Saludos, este curso es genial, así que me tomé la libertad de actualizar cada archivo para que pueda funcionar en la versión de Android Studio 4.1.3. Los cambios los pueden obtener en mi repositorio de Github. Este enlace es para los ejercicios propuestos por la profesora Anahí para la arquitectura MVC. Muy agradecido.

Nice! usando Kotlin

Recordar actualizar los documentos de los cursos, ya que algunos presentar problemas de versiones. SDK.

por qué Kotlin y no Java? 😭

No debería hacer MVC, ya que no es lo recomendado, y también debería hacer la lógica desde cero 👇

{
“lmd_id”: “416140”,
“store”: “sowinghappiness.com”,
“offer_text”: “Sweatshirts For Men @ just ₹749”,
“offer_value”: “Super Offer”,
“title”: “Sweatshirts For Men”,
“description”: “Get it @ ₹749 only”,
“code”: “”,
“terms_and_conditions”: “”,
“categories”: “Fashion,Mens Apparels”,
“featured”: “No”,
“url”: “https://www.sowinghappiness.com/product-category/sweatshirts-for-men/”,
“smartLink”: “http://linkmydeals.com/smartlink/?account_id=1257&network=&url=https%3A%2F%2Fwww.sowinghappiness.com%2Fproduct-category%2Fsweatshirts-for-men%2F”,
“image_url”: “”,
“type”: “Deal”,
“offer”: “Offer”,
“status”: “active”,
“start_date”: “2019-06-04”,
“end_date”: “2019-07-21”
}

Hola, en mi caso no funcionaba cuando lo compile, sin embargo después s de revisar encontré que al parecer uno de los atributos de la respuesta del API ya no se incluye:

Modifique la clase Coupon.kt añadiendo como comentarios los atributos

Adicionalmente una ves ejecutada y cargado el recycler cuando hacia swipe o scroll down se reventaba el App porque alguna url de las imágenes se recibían vacías, solo agregue una if de validación en a linea.

l

Espero sea de ayuda…

Chicos, les comparto mi repositorio donde podrán encontrar cada arquitectura del curso haciendo click aquí

Espero les pueda ayudar 😃

Muy bien todo hasta ahora, entendible.

Con solo importar retrofit-converters transitivamente de descargas la retrofit…

Alguien pudo ejecutar el proyecto en Android estudio?

![](

Me sale el siguiente error al intentar ejecutar el proyecto y lo siguiente es que el API esta devolviendo image_url: “”, vacio y eso hace que la aplicacion falle

Como se agrega la API para que aparezca en el emulador del SDK?