Una delle pratiche descritte in Consegna continua di Jez Humble è che dovresti creare un pacchetto e poi rilasciare a ogni ambiente in cui viene distribuito, in modo che la distribuzione e gli artefatti siano stati testati più volte prima di andare in produzione.
Sono pienamente d'accordo con questa idea.
D'altro canto, le build in modalità di debug che forniscono tracce di stack con numeri di linea sono incredibilmente utili negli ambienti di test, così come la possibilità di eseguire il debug remoto. Ma, vuoi inviare una versione build alla produzione.
Quindi, per le persone che seguono il primo principio, a che punto passi da debug a release build?
Prima della prima distribuzione in un ambiente di test, è importante calcolare il costo della perdita della modalità di debug per assicurarsi di testare in anticipo il candidato vero e proprio? O costruisci di nuovo ad un certo punto del processo di promozione, immaginando che ti fideresti del processo di costruzione sul software? O stai solo rovinando tutto e distribuisci le versioni di debug in produzione?
Nota: so che questo non si applica realmente alle lingue interpretate perché di solito è possibile sfogliare lo switch nella configurazione piuttosto che farlo in fase di compilazione.