Cuando la reutilización se vuelve contra la arquitectura

En el mundo del desarrollo solemos sentir pavor ante un fragmento de código repetido. Como defensores del código limpio, corremos a refactorizar esa aberración unificando toda la lógica en un único método de utilidad o clase. Así, conseguimos algo más reusable, reducimos el impacto del mantenimiento y nos sentimos genial. Pues bien, esta misma idea … Leer más

Testing unitario y el factor tiempo

No hace mucho que estuve involucrado en un proyecto donde la importancia del testing unitario fue cayendo hasta pasar de ser un requisito a un extra. Cada semana la exigencia por parte del cliente aumentaba, y el factor tiempo acabó imponiéndose de tal manera que el equipo terminamos por sentir que cualquier cosa que no … Leer más

Asincronía y paralelismo con Kotlin coroutines

En este artículo explicaré una propuesta de cómo tratar la asincronía de nuestros Interactors utilizando las Kotlin coroutines. Para ello utilizaré conceptos de Clean Architecture, si no estás muy familiarizado con esta parte, te recomiendo que antes le eches un ojo a un artículo anterior: De MVP a Clean II. ¡Hagámoslo Clean!. Las piezas necesarias … Leer más

RxJava: dale un respiro al hilo principal

La ejecución de procesos asíncronos forma parte de nuestro día a día como desarrolladores. Tanto si queremos lanzar una petición a un servicio web, como si realizamos una operación pesada sobre base de datos, tenemos que aislarnos del hilo principal (Main Thread) si no queremos bloquear la interfaz o recibir una NetworkOnMainThreadException. En este artículo … Leer más

De MVP a Clean II. ¡Hagámoslo Clean!

Entender qué es eso de Clean Architecture no siempre resulta fácil ni intuitivo. En este artículo intentaré explicar los puntos claves de un proyecto Clean; centrándome en clarificar la visión de conjunto, pero sin descuidar esas peculiaridades que tantos quebraderos de cabeza nos dan en el día a día. Antes de empezar, si no te … Leer más

De MVP a Clean I. ¿Es esto MVP?

La primera vez que decidimos en mi empresa desarrollar una app con MVP, me puse a leer un poco de aquí y otro poco de allá, y empecé a aplicar desconfiado las soluciones que me proponía la comunidad. Con el paso de los proyectos, el conocimiento iba creciendo, pero las dudas también, y debo decir … Leer más