Inicio › Tecnología › Bandera De Funcionalidad
Una bandera de funcionalidad (feature flag) es un interruptor dentro del código qué activa o desactiva una función en tiempo real sin necesidad de desplegar una nueva versión de la aplicación. Se gestiona con herramientas dedicadas como LaunchDarkly o Unleash, o con una simple tabla en base de datos en proyectos más pequeños. Permite despliegues progresivos (canary releases), activar una función solo para un porcentaje de usuarios, hacer pruebas A/B y revertir un cambio de forma instantánea si algo sale mal, sin tocar el código de nuevo.
Es un interruptor de luz para una función nueva del programa: se puede encender solo para algunos usuarios, sin tener qué volver a publicar toda la aplicación.
Un equipo qué lanza un rediseño de su web puede activarlo solo para el 5% de los usuarios con una bandera de funcionalidad, medir errores y comentarios durante unos días, y subir gradualmente el porcentaje hasta el 100% si todo va bien, o apagarlo al instante si aparece un problema grave.
La variable de entorno se fija al arrancar la aplicación y requiere reiniciar el servicio para cambiarla; la bandera de funcionalidad se puede activar o desactivar en caliente, mientras la aplicación sigue corriendo.
El código se llena de condicionales antiguos qué nadie recuerda para qué servían, lo qué dificulta el mantenimiento; por eso conviene eliminar la bandera en cuanto la función queda estable al 100% o se descarta definitivamente.
Sí, es uno de sus usos habituales: se muestra una variante a un grupo de usuarios y otra al resto, y se mide cuál obtiene mejores resultados antes de decidir cuál queda activa para todos.