Nie sądzę, aby program po cichu ignorował lub powodował spustoszenie, ilekroć napotkał problem.
Co robię z oprogramowaniem wewnętrznym, które piszę dla mojej firmy ...
Zależy to od błędu, powiedzmy, że jeśli jest to funkcja krytyczna, która wprowadza dane do MySQL, musi poinformować użytkownika, że się nie udało. Procedura obsługi błędów powinna próbować zebrać jak najwięcej informacji i dać użytkownikowi pomysł, jak samodzielnie poprawić błąd, aby mógł zapisać dane. Chciałbym również podać sposób, w jaki dyskretnie przesyłają nam informacje, które próbują zapisać, więc jeśli pogorszy się, możemy wprowadzić je ręcznie po usunięciu błędu.
Jeśli nie jest to funkcja krytyczna, coś, co może popełnić błąd i nie wpłynąć na ostateczny wynik tego, co próbują osiągnąć, mogę nie pokazać im komunikatu o błędzie, ale wysłać e-mail, który automatycznie wstawi go do naszego oprogramowania do śledzenia błędów lub e-mailowa grupa dystrybucyjna, która ostrzega wszystkich programistów w firmie, abyśmy byli świadomi błędu, nawet jeśli nie jest nim użytkownik. To pozwala nam naprawić zaplecze, podczas gdy w interfejsie nikt nie wie, co się dzieje.
Jedną z największych rzeczy, których staram się unikać, jest awaria programu po błędzie - niemożność odzyskania. Zawsze staram się dać użytkownikowi opcję kontynuowania bez zamykania aplikacji.
Wierzę, że jeśli nikt nie wie o błędzie - nigdy nie zostanie naprawiony. Jestem również zwolennikiem obsługi błędów, która umożliwia kontynuowanie działania aplikacji po wykryciu błędu.
Jeśli błąd jest związany z siecią - dlaczego nie wykonać funkcji prostego testu komunikacji sieciowej przed wykonaniem funkcji, aby w pierwszej kolejności uniknąć błędu? Po prostu ostrzegając użytkownika, że połączenie jest niedostępne, sprawdź swój Internet itp. Itp. I spróbuj ponownie?