<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Herramientas y productividad en Flutter :: Flutter en rigle.dev</title><link>https://flutter.rigle.dev/ejercicios/herramientas-codigo/index.html</link><description>Ejercicios de Flutter sobre generación de código, inyección de dependencias avanzada, flavors y herramientas de productividad para proyectos reales.</description><generator>Hugo</generator><language>es</language><lastBuildDate>Mon, 25 May 2026 00:00:00 +0200</lastBuildDate><atom:link href="https://flutter.rigle.dev/ejercicios/herramientas-codigo/index.xml" rel="self" type="application/rss+xml"/><item><title>CI/CD con GitHub Actions en Flutter: ejercicio resuelto</title><link>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-ci-cd-github-actions-ejercicio-resuelto/index.html</link><pubDate>Mon, 06 Jul 2026 00:00:00 +0200</pubDate><guid>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-ci-cd-github-actions-ejercicio-resuelto/index.html</guid><description>Ejercicio resuelto de CI/CD con GitHub Actions para Flutter: análisis, tests, build de APK y IPA, con matrix de Dart y despliegue automático.</description></item><item><title>Flavors dev, staging y prod en Flutter: ejercicio resuelto</title><link>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-flavors-dev-prod-ejercicio-resuelto/index.html</link><pubDate>Tue, 30 Jun 2026 00:00:00 +0200</pubDate><guid>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-flavors-dev-prod-ejercicio-resuelto/index.html</guid><description>Ejercicio resuelto para configurar Flavors en Flutter con dart-define: múltiples entornos dev/staging/prod con API URLs distintas, nombre de app y logging diferenciado.</description></item><item><title>flutter_hooks en Flutter: ejercicio resuelto con useState y useEffect</title><link>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-hooks-usestate-useeffect-ejercicio-resuelto/index.html</link><pubDate>Thu, 09 Jul 2026 00:00:00 +0200</pubDate><guid>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-hooks-usestate-useeffect-ejercicio-resuelto/index.html</guid><description>Ejercicio resuelto de flutter_hooks: useState, useEffect, useMemoized, useStream y hooks personalizados para eliminar StatefulWidget en Flutter.</description></item><item><title>Freezed y json_serializable en Flutter: ejercicio resuelto</title><link>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-freezed-json-serializable-ejercicio-resuelto/index.html</link><pubDate>Sun, 28 Jun 2026 00:00:00 +0200</pubDate><guid>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-freezed-json-serializable-ejercicio-resuelto/index.html</guid><description>Ejercicio resuelto para crear modelos inmutables en Flutter con Freezed: copyWith automático, fromJson/toJson, union types y build_runner paso a paso.</description></item><item><title>Isolates y compute en Flutter: ejercicio resuelto</title><link>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-isolates-compute-ejercicio-resuelto/index.html</link><pubDate>Sat, 11 Jul 2026 00:00:00 +0200</pubDate><guid>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-isolates-compute-ejercicio-resuelto/index.html</guid><description>Ejercicio resuelto de Isolates y compute en Flutter: ejecutar tareas pesadas fuera del hilo principal, parseo de JSON masivo, comunicación con SendPort y ReceivePort.</description></item><item><title>json_serializable con build_runner en Flutter: ejercicio resuelto</title><link>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-json-serializable-buildrunner-ejercicio-resuelto/index.html</link><pubDate>Mon, 29 Jun 2026 00:00:00 +0200</pubDate><guid>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-json-serializable-buildrunner-ejercicio-resuelto/index.html</guid><description>Ejercicio resuelto para generar fromJson y toJson automáticamente en Flutter con json_serializable y build_runner, sin depender de Freezed.</description></item><item><title>Linting y analysis_options en Flutter: ejercicio resuelto</title><link>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-linting-analysis-options-ejercicio-resuelto/index.html</link><pubDate>Sun, 05 Jul 2026 00:00:00 +0200</pubDate><guid>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-linting-analysis-options-ejercicio-resuelto/index.html</guid><description>Ejercicio resuelto para configurar linting estricto en Flutter con analysis_options.yaml, flutter_lints y very_good_analysis: reglas recomendadas y cómo aplicarlas.</description></item><item><title>Notificaciones locales en Flutter: ejercicio resuelto con flutter_local_notifications</title><link>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-local-notifications-ejercicio-resuelto/index.html</link><pubDate>Tue, 14 Jul 2026 00:00:00 +0200</pubDate><guid>https://flutter.rigle.dev/ejercicios/herramientas-codigo/flutter-local-notifications-ejercicio-resuelto/index.html</guid><description>Ejercicio resuelto de notificaciones locales en Flutter: flutter_local_notifications, canales Android, notificaciones programadas, payload y navegación desde notificación.</description></item></channel></rss>