<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>flows on Carrion.dev</title><link>https://carrion.dev/es/tags/flows/</link><description>Recent content in flows on Carrion.dev</description><generator>Hugo -- gohugo.io</generator><language>es</language><managingEditor>ignacio@carrion.dev (Ignacio Carrión)</managingEditor><webMaster>ignacio@carrion.dev (Ignacio Carrión)</webMaster><copyright>&amp;copy;{year}, All Rights Reserved</copyright><lastBuildDate>Tue, 29 Apr 2025 08:00:00 +0100</lastBuildDate><atom:link href="https://carrion.dev/es/tags/flows/index.xml" rel="self" type="application/rss+xml"/><item><title>Patrones de Testing para Coroutines: Estrategias Efectivas para Testear Código Asíncrono en Kotlin</title><link>https://carrion.dev/es/posts/coroutine-testing-patterns/</link><pubDate>Tue, 29 Apr 2025 08:00:00 +0100</pubDate><author>ignacio@carrion.dev (Ignacio Carrión)</author><atom:modified>Tue, 29 Apr 2025 08:00:00 +0100</atom:modified><guid>https://carrion.dev/es/posts/coroutine-testing-patterns/</guid><description>Patrones de Testing para Coroutines: Estrategias Efectivas para Testear Código Asíncrono en Kotlin Testear código asíncrono siempre ha sido un desafío, y las coroutines y flows de Kotlin no son una excepción. Sin embargo, el equipo de Kotlin ha proporcionado potentes utilidades de test que hacen que este proceso sea más manejable y confiable. En este artículo, exploraremos patrones efectivos para testear coroutines y flows, desde tests unitarios básicos hasta escenarios de integración complejos.</description><dc:creator>Ignacio Carrión</dc:creator><media:content url="https://carrion.dev/images/kotlin/coroutine-testing.png" medium="image"><media:title type="html">featured image</media:title></media:content><category>kotlin</category><category>coroutines</category><category>testing</category><category>flows</category></item><item><title>Gestión Avanzada de Estado en Compose: Effects y Flows</title><link>https://carrion.dev/es/posts/advanced-state-management-compose/</link><pubDate>Tue, 01 Apr 2025 08:00:00 +0100</pubDate><author>ignacio@carrion.dev (Ignacio Carrión)</author><atom:modified>Tue, 01 Apr 2025 08:00:00 +0100</atom:modified><guid>https://carrion.dev/es/posts/advanced-state-management-compose/</guid><description>Gestión Avanzada de Estado en Compose: Effects y Flows Este artículo explora patrones avanzados de gestión de estado en Jetpack Compose, centrándose en Effects e integración de Flows. Para conceptos fundamentales como mutableStateOf y state hoisting, consulta nuestro artículo complementario Gestión Básica de Estado en Jetpack Compose.
Entendiendo los Effects en Compose Los Effects en Compose son herramientas para manejar efectos secundarios y eventos del ciclo de vida de manera compatible con los composables.</description><dc:creator>Ignacio Carrión</dc:creator><media:content url="https://carrion.dev/images/kotlin/state-management-compose-advanced.png" medium="image"><media:title type="html">featured image</media:title></media:content><category>android</category><category>compose</category><category>state</category><category>flows</category><category>effects</category></item><item><title>Patrones de Composición de Flows: Combinando Múltiples Flows de Manera Efectiva</title><link>https://carrion.dev/es/posts/flow-composition-patterns/</link><pubDate>Tue, 18 Mar 2025 08:00:00 +0100</pubDate><author>ignacio@carrion.dev (Ignacio Carrión)</author><atom:modified>Tue, 18 Mar 2025 08:00:00 +0100</atom:modified><guid>https://carrion.dev/es/posts/flow-composition-patterns/</guid><description>Patrones de Composición de Flows: Combinando Múltiples Flows de Manera Efectiva Cuando trabajamos con Kotlin Flows en aplicaciones del mundo real, a menudo necesitamos combinar múltiples flujos de datos para crear flujos de trabajo más complejos. Este artículo explora varios patrones de composición de Flows y las mejores prácticas para combinar múltiples Flows de manera efectiva.
Entendiendo la Composición de Flows La composición de Flows es el proceso de combinar múltiples Flows para crear un nuevo Flow que representa un flujo de datos más complejo.</description><dc:creator>Ignacio Carrión</dc:creator><media:content url="https://carrion.dev/images/kotlin/flow-composition.png" medium="image"><media:title type="html">featured image</media:title></media:content><category>kotlin</category><category>coroutines</category><category>flows</category><category>patterns</category></item><item><title>Entendiendo los Operadores de Flujo (Flow): Buffer, Conflate, Debounce y Sample</title><link>https://carrion.dev/es/posts/flow-operators-buffer-conflate/</link><pubDate>Fri, 14 Mar 2025 08:00:00 +0100</pubDate><author>ignacio@carrion.dev (Ignacio Carrión)</author><atom:modified>Fri, 14 Mar 2025 08:00:00 +0100</atom:modified><guid>https://carrion.dev/es/posts/flow-operators-buffer-conflate/</guid><description>Entendiendo los Operadores de Flujo (Flow): Buffer, Conflate, Debounce y Sample Cuando trabajamos con flujos de Kotlin (Flows), especialmente en escenarios que involucran productores que emiten rápidamente y colectores lentos, es crucial entender cómo gestionar el flujo de datos de manera efectiva. Este post explora cuatro operadores esenciales de Flow que ayudan a manejar estos escenarios: buffer, conflate, debounce y sample.
El Problema: Colectores Lentos Antes de profundizar en los operadores, entendamos el problema que resuelven.</description><dc:creator>Ignacio Carrión</dc:creator><media:content url="https://carrion.dev//images/kotlin/flow-operators.png" medium="image"><media:title type="html">featured image</media:title></media:content><category>kotlin</category><category>flows</category><category>coroutines</category></item><item><title>Convirtiendo Callbacks a Corrutinas y Flows en Kotlin</title><link>https://carrion.dev/es/posts/callback-to-flow-conversion/</link><pubDate>Tue, 11 Mar 2025 08:00:00 +0100</pubDate><author>ignacio@carrion.dev (Ignacio Carrión)</author><atom:modified>Tue, 11 Mar 2025 08:00:00 +0100</atom:modified><guid>https://carrion.dev/es/posts/callback-to-flow-conversion/</guid><description>Convirtiendo Callbacks a Coroutines y Flows en Kotlin Las APIs basadas en callbacks han sido un patrón común en la programación asíncrona durante muchos años. Sin embargo, con las corrutinas y flows de Kotlin, podemos transformar estos callbacks en código moderno y secuencial que es más fácil de leer y mantener. En este artículo, exploraremos cómo usar suspendCoroutine y callbackFlow para convertir APIs basadas en callbacks a corrutinas y flows.</description><dc:creator>Ignacio Carrión</dc:creator><media:content url="https://carrion.dev/images/kotlin/suspend-coroutine.png" medium="image"><media:title type="html">featured image</media:title></media:content><category>kotlin</category><category>coroutines</category><category>flows</category><category>callbacks</category></item><item><title>Entendiendo los Hot y Cold Flows en Kotlin</title><link>https://carrion.dev/es/posts/kotlin-flows-hot-cold/</link><pubDate>Fri, 07 Mar 2025 08:00:00 +0100</pubDate><author>ignacio@carrion.dev (Ignacio Carrión)</author><atom:modified>Fri, 07 Mar 2025 08:00:00 +0100</atom:modified><guid>https://carrion.dev/es/posts/kotlin-flows-hot-cold/</guid><description>Entendiendo los Hot y Cold Flows en Kotlin Kotlin Flow es una potente característica para manejar flows reactivos de datos. Uno de los conceptos fundamentales para entender cuando trabajamos con flows es la distinción entre hot y cold flows. Este artículo explicará las diferencias y proporcionará ejemplos prácticos de ambos tipos.
Cold Flows: El Comportamiento por Defecto Los cold flows son el tipo predeterminado en Kotlin Flow. Comienzan a producir valores solo cuando un collector empieza a recolectar de ellos.</description><dc:creator>Ignacio Carrión</dc:creator><media:content url="https://carrion.dev/images/kotlin/flows.png" medium="image"><media:title type="html">featured image</media:title></media:content><category>kotlin</category><category>coroutines</category><category>flows</category></item></channel></rss>