Pytania otagowane jako error-handling

Pytania dotyczące obsługi błędów i wyjątków. Według Wikipedii obsługa wyjątków jest procesem reagowania na wystąpienie podczas obliczeń wyjątków - anomalnych lub wyjątkowych zdarzeń wymagających specjalnego przetwarzania - często zmieniających normalny przebieg wykonywania programu. Zapewniają to specjalistyczne konstrukcje języka programowania lub mechanizmy sprzętowe komputera.

11
Czy interfejs API REST powinien zwrócić błąd wewnętrzny serwera 500, aby wskazać, że zapytanie odwołuje się do obiektu, który nie istnieje?
Pracuję z interfejsem API REST, który znajduje się na serwerze, który obsługuje dane dla wielu urządzeń IoT. Moim zadaniem jest wysłanie zapytania do serwera za pomocą interfejsu API w celu zebrania określonych informacji o wydajności tych urządzeń. W jednym przypadku uzyskuję listę dostępnych urządzeń i odpowiadających im identyfikatorów, a następnie …

6
Ile informacji o błędzie powinien zostać pokazany użytkownikowi?
Aplikacje zawsze mogą zgłaszać błędy. Jeśli wystąpi taki błąd, użytkownik powinien zostać powiadomiony, ponieważ to, o co poprosił aplikację, nie powiodło się. Ile informacji powinien jednak podać użytkownik? Myślę, że większość z nas zgadza się nie pokazywać śladu stosu ( czy ślad stosu powinien znajdować się w komunikacie o błędzie …


7
Argumenty przeciwko eliminacji błędów
W jednym z naszych projektów znalazłem taki kod: SomeClass QueryServer(string args) { try { return SomeClass.Parse(_server.Query(args)); } catch (Exception) { return null; } } O ile rozumiem, pomijanie takich błędów jest złą praktyką, ponieważ niszczy przydatne informacje z wyjątku oryginalnego serwera i sprawia, że ​​kod jest kontynuowany, kiedy powinien się …

9
Czy można napisać zbyt wiele twierdzeń?
Jestem wielkim fanem pisania assertczeków w kodzie C ++ jako sposobu na złapanie przypadków podczas programowania, które nie mogą się zdarzyć, ale zdarzają się z powodu błędów logicznych w moim programie. Jest to ogólnie dobra praktyka. Zauważyłem jednak, że niektóre funkcje, które piszę (które są częścią złożonej klasy) mają 5+ …

3
Czy adres 0000000C jest adresem specjalnym?
Podczas programowania czasami coś się psuje. Popełniłeś błąd i twój program próbuje odczytać z niewłaściwego adresu. Jedna rzecz, która wyróżnia mnie, że często te wyjątki to: Access violation at address 012D37BC in module 'myprog.exe'. Read of address 0000000C. Teraz widzę wiele dzienników błędów, a wyróżnia mnie: 0000000C. Czy to adres …

7
Czy można używać wyjątków jako narzędzi do wczesnego „wychwytywania” błędów?
Używam wyjątków, aby wcześnie wychwytywać problemy. Na przykład: public int getAverageAge(Person p1, Person p2){ if(p1 == null || p2 == null) throw new IllegalArgumentException("One or more of input persons is null"). return (p1.getAge() + p2.getAge()) / 2; } Mój program nigdy nie powinien przejść nulltej funkcji. Nigdy tego nie zamierzam. …


6
wskaźniki zerowe a wzorzec zerowy obiektu
Uznanie autorstwa: Wynikało to z powiązanego pytania P.SE Moje doświadczenie jest w C / C ++, ale pracowałem sporo w Javie i obecnie koduję C #. Ze względu na moje tło C sprawdzanie wskaźników zakończonych i zwróconych jest używane, ale potwierdzam, że podważam mój punkt widzenia. Niedawno widziałem wzmiankę o …

4
Obsługa wyjątków w stylu funkcjonalnym
Powiedziano mi, że w programowaniu funkcjonalnym nie należy rzucać i / lub obserwować wyjątków. Zamiast tego błędne obliczenia należy ocenić jako dolną wartość. W Pythonie (lub innych językach, które nie w pełni zachęcają do programowania funkcjonalnego) można zwrócić None(lub inną alternatywę traktowaną jako dolna wartość, choć Nonenie jest ściśle zgodna …


2
Najczystszy sposób zgłaszania błędów w Haskell
Pracuję nad nauką języka Haskell i natknąłem się na trzy różne sposoby radzenia sobie z błędami w funkcjach, które piszę: Potrafię po prostu pisać error "Some error message.", co rzuca wyjątek. Mogę zwrócić funkcję Maybe SomeType, w której mogę, ale nie muszę, zwrócić tego, co chciałbym zwrócić. Mogę mieć funkcję …

3
Jak obsługiwać błędy po sprawdzeniu poprawności w poleceniu (DDD + CQRS)
Na przykład, gdy przesyłasz formularz Rejestru, musisz sprawdzić Domain Model( WriteModelin CQRS), czy jest on w poprawnym stanie (na przykład składnia adresu e-mail, wiek itp.). Następnie tworzysz Commandi wysyłasz do Command Bus. Rozumiem, że polecenia nie powinny niczego zwracać. Jak więc poradzić sobie z błędem wykraczającym poza Command Bus? (Na …

2
Architektura wielowarstwowa: gdzie należy wdrożyć rejestrowanie błędów / obsługę?
Obecnie refaktoryzuję duży podsystem o architekturze wielowarstwowej i staram się zaprojektować skuteczną strategię rejestrowania błędów / obsługi. Powiedzmy, że moja architektura składa się z następujących trzech warstw: Interfejs publiczny (IE i kontroler MVC) Warstwa Domeny Warstwa dostępu do danych Moim źródłem zamieszania jest to, gdzie powinienem zaimplementować rejestrowanie błędów / …


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.