Pytania otagowane jako exceptions

Wyjątkiem jest występowanie w procesie aplikacji, które wymaga odchylenia od normalnego przepływu programu.

2
Szczegółowość wyjątków
Natknąłem się na debatę między kilkoma przyjaciółmi i mną. Wolą ogólne wyjątki, takie jak ClientErrorExceptioni ServerErrorExceptionze szczegółami jako pola wyjątku, podczas gdy ja wolę sprecyzować rzeczy. Na przykład mogę mieć kilka wyjątków, takich jak: BadRequestException AuthenticationFailureException ProductNotFoundException Każdy z nich zbudowany w oparciu o kod błędu zwrócony z interfejsu API. …

2
Czy musimy zweryfikować użycie całego modułu, czy tylko argumenty metod publicznych?
Słyszałem, że zalecane jest sprawdzenie poprawności argumentów metod publicznych: Czy należy sprawdzić wartość zerową, jeśli nie spodziewa się wartości zerowej? Czy metoda powinna zweryfikować swoje parametry? MSDN - CA1062: Sprawdź poprawność argumentów metod publicznych (mam tło .NET, ale pytanie nie jest specyficzne dla C #) Motywacja jest zrozumiała. Jeśli moduł …

6
Jeśli model sprawdza poprawność danych, czy nie powinien generować wyjątków w przypadku złych danych wejściowych?
Czytając to pytanie SO , wydaje się, że odrzucanie wyjątków w celu sprawdzania poprawności danych wejściowych użytkownika jest niezadowolone. Ale kto powinien zweryfikować te dane? W moich aplikacjach wszystkie walidacje są wykonywane w warstwie biznesowej, ponieważ tylko sama klasa naprawdę wie, które wartości są prawidłowe dla każdej z jej właściwości. …

5
Wyjątki dotyczące „błędu programowania” - Czy moje podejście jest prawidłowe?
Obecnie próbuję ulepszyć sposób korzystania z wyjątków i znalazłem ważne rozróżnienie między wyjątkami, które oznaczają błędy programowania (np. Ktoś przekazał wartość NULL jako argument lub wywołał metodę na obiekcie po jego usunięciu), a tymi, które oznaczają błąd w operacja, która nie jest błędem osoby dzwoniącej (np. wyjątek We / Wy). …
9 java  c#  c++  exceptions 

2
Użyj innego po wyjątku (lub nie)
Rozważ ten fragment kodu: if (x == 1) { throw "no good; aborting" ; } [... more code ...] Teraz rozważ ten kod: if (x == 1) { throw "no good; aborting" ; } else { [... more code ...] } Oba przypadki działają dokładnie w ten sam sposób. Pierwszy …


2
Jak mogę debugować wyjątki, które nie są łatwe do odtworzenia i występują tylko w środowisku produkcyjnym?
Pracuję nad problemem, w którym wyjątek występuje tylko w naszym środowisku produkcyjnym. Nie mam dostępu do tych środowisk ani nie wiem, co oznacza ten wyjątek. Patrząc na opis błędu, nie jestem w stanie zrozumieć przyczyny. javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure Czy ktoś mógłby mi doradzić, jak podejść do tego rodzaju …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.