Ho letto che dovremmo prendere solo eccezioni che possono essere gestite, il che rende cattiva l'idea della classe di base di base (C # in questo caso) (per altri motivi). Attualmente faccio parte di un progetto in cui finora non ho ancora visto altro che l'eccezione di base catturata. Ho detto che è considerato una cattiva pratica farlo, ma la risposta è stata "Questo servizio deve essere eseguito 24 ore su 24, 7 giorni su 7, quindi è così."
Poiché non ho avuto una buona risposta su come gestire correttamente le eccezioni in un programma che deve essere eseguito 24 ore su 24, ora sono qui. Non sono riuscito a trovare alcuna informazione / suggerimento su come gestire la gestione delle eccezioni in programmi / servizi "critici" che devono essere eseguiti 24 ore su 24 (e in questo caso credo che potrebbe essere ok se il servizio è inattivo per un minuto o due, quindi nemmeno critici). Capisco che dipende dalla natura esatta del programma. I requisiti per un programma che può causare problemi di vita sono abbastanza diversi rispetto a uno scanner di registro per un gioco online.
Due esempi:
1: un servizio type-ahead per i clienti delle ferrovie brittish, utilizzato quando cercano online le stazioni ferroviarie.
2: Un programma che controlla automaticamente gli interruttori ferroviari per le ferrovie di cui sopra in base alle informazioni in tempo reale fornite da vari sensori nei binari, treni ecc.
Il primo programma probabilmente non causerebbe un grosso problema se fosse andato giù per un minuto o due, mentre il secondo potrebbe causare vittime umane. Suggerimenti su come comportarsi con ciascuno? Puntatore a dove posso trovare più informazioni e pensieri su questo problema?