Risposta principale / breve
Dipende dal tuo programma, dalle esigenze di detto programma e dal livello critico di detto programma.
Risposta leggermente più lunga
Una buona soluzione "shotgun-catch-all" è vedere se il linguaggio di programmazione del tuo programma ha una sorta di metodo o classe di gestione degli errori di default che TUTTI gli errori passano e basta sovrascriverli per rilevare l'errore, registrarlo / segnalarlo allo sviluppatore, quindi uccidere il programma.
Risposta lunga
Se sviluppi il tuo programma in alcune mode (cioè moduli isolati e incapsulati) puoi, teoricamente (perché è pericoloso andare avanti se viene trovato un errore), resettare quel modulo e continuare / riprovare su quel modulo.
Il più grande svantaggio di questo è che speri che la sezione del problema (qualunque cosa sia) si risolverà da sola dopo mille iterazioni. È quasi come accettare la pazzia come una soluzione (continua a cercare di aspettarti un risultato diverso) ... ma per alcuni programmi, DEVE essere fatto perché sono così mission critical (pensa a programmi usati in situazioni mediche ... NON POSSONO fallire e deve andare avanti indipendentemente da cosa).
Ricorda che la soluzione "accetta follia" può anche presentare all'utente un programma senza fine (cioè non possono procedere o il computer si blocca in un ciclo cercando di risolvere il programma).
È un'arma a doppio taglio, sì puoi progettare il programma per andare avanti e resettare la sezione del problema e questo ha il potenziale di introdurre errori in seguito a causa di dati corrotti e fare in modo che l'utente "ripeti" il processo fino a quando non viene risolto .
D'altro canto, uccidere il programma per ogni errore può far sembrare il programma instabile o mal progettato anche se è colpa dell'utente causare il crash del programma (cioè l'arte della convalida dell'input dell'utente) o può causare lo sviluppatore iniziare a diventare pigri con correzioni di bug (perché vengono bombardati) usando cose come blocchi try-catch ovunque (l'ho visto su un progetto una volta ... quasi tutti i metodi sono stati provati).
Come la mia prima linea, dipende molto dal tuo programma.