Logo de Dallonses

Feature flag

Què és un feature flag?

Un feature flag, també anomenat feature toggle, és una manera d'activar o desactivar funcionalitat en una aplicació en marxa sense desplegar codi nou. La funció viu en el codi, embolcallada en una comprovació condicional contra el valor d'un flag. Aquest interruptor decideix si els usuaris la veuen. La idea és separar el desplegar codi del publicar una funció, dos actes que tradicionalment passaven en el mateix moment.

Un cop existeix aquesta separació, el control esdevé precís. El codi pot estar en producció, plenament desplegat, mentre la funció roman oculta fins que està a punt. Després pot sortir per a tothom, per a un subconjunt com testers interns o el cinc per cent dels usuaris, o apagar-se a l'instant si alguna cosa es trenca. Un equip que llança un nou checkout pot dirigir el deu per cent del trànsit cap a ell, observar els números i revertir en segons sense un sol redesplegament. Això és el que impulsa els desplegaments graduals, els tests A/B i els llançaments canary, i és pràctica estàndard en equips que despleguen moltes vegades al dia.

Els flags també tenen un cost. Cada interruptor que es queda en el codi després de complir la seva funció es converteix en deute tècnic, i afegeix branques i complexitat en silenci. Els equips sans tracten la neteja de flags com a part de la feina, no com una cosa secundària, perquè el codi no s'ompli a poc a poc d'interruptors morts.

Feature flags a Dallonses

Els flags són com publiquem sense contenir la respiració. Posar una funció nova darrere d'un interruptor significa que podem llançar el codi, validar-lo amb trànsit real i ampliar el desplegament només quan les dades ho avalen. Si alguna cosa va malament, l'arranjament és un interruptor, no un desplegament d'emergència a mitjanit.

Encaixen de manera natural en la nostra feina d'entrega contínua, on desplegar sovint i publicar amb cura són dues decisions diferents. També fixem expectatives aviat amb els clients: un flag té una vida útil, i el retirem un cop la funció està plenament publicada. Això manté el codi net i el procés de publicació tranquil.

Vols publicar funcions sense apostar tot el producte en cada desplegament? Anem a muntar-ho.

Parlem de publicacions segures

Serveis relacionats


Preparat per a traballar junts?

Reserva una reunió
Aymón sostenint una revista Tools davant de la seva cara
Ari treballant en un portàtil a l'aire lliure envoltada de plantes
Vista superior d'un escriptori de fusta amb teclat, ratolí i auriculars
Il·lustració dibuixada a mà d'una mà chasquejant els dits
Nico recolzat contra un dispensador d'aigua al costat d'un extintor
Primer pla d'un ordinador obert amb placa de circuit i components sobre un escriptori de fusta
Bernat i Andreu col·laborant en un escriptori amb monitors i un portàtil
Il·lustració dibuixada a mà d'una mà oberta saludant
Aymón sostenint una revista Tools davant de la seva cara
Ari treballant en un portàtil a l'aire lliure envoltada de plantes
Vista superior d'un escriptori de fusta amb teclat, ratolí i auriculars
Il·lustració dibuixada a mà d'una mà chasquejant els dits
Nico recolzat contra un dispensador d'aigua al costat d'un extintor
Primer pla d'un ordinador obert amb placa de circuit i components sobre un escriptori de fusta
Bernat i Andreu col·laborant en un escriptori amb monitors i un portàtil
Il·lustració dibuixada a mà d'una mà oberta saludant