• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Obsługa wyjątków, jak to powinno wyglądać?

Fiszki IT
Fiszki IT
0 głosów
126 wizyt
pytanie zadane 6 września 2018 w PHP przez BetBet Użytkownik (550 p.)
Witam,
Z góry mówię, że jestem troszkę zielony w obsłudze wyjątków.
Zastanawia mnie jak to powinno wyglądać / jak wygląda ze strony użytkownika. Obstawiam, że istnieje coś takiego jak wyłączenie pokazywania błędów. Widziałem przypadki stron gdzie krytyczny błąd był wywalany użytkownikowi na ekranie i takie gdzie błąd był w jakimś dość przyjemnym widoku z instrukcją żeby poinformować support i pod spodem dane kontaktowe. Szczerze nawet nie wiem czy obsługa tych wyjątków ma służyć programistom czy, żeby ograniczyć informacje które otrzyma użytkownik o tym błędzie.
Tak więc dla kogo są te informacje, dla użytkownika czy programistów? Da się jakoś wyłączyć kompletnie te błędy żeby użytkownik ich nie widział albo - np walnąć widok z informacją, że są jakieś problemy ze stroną i że prosimy o poinformowanie support na ten i na ten adres o problemie z opisem co powoduje błąd?

1 odpowiedź

0 głosów
odpowiedź 6 września 2018 przez Ehlert Ekspert (204,910 p.)
wybrane 7 września 2018 przez BetBet
 
Najlepsza

Error reporting i levele ustawia się w php.ini. W kodzie specjalnie powinny mieć miejsca gdzie leci wyjątek. Masz np wyciągnie usera po unikalnych wartościach. Jeśli wyciągniesz 2 userów to ewidentnie trzeba rzucić exception.

Widziałem przypadki stron gdzie krytyczny błąd był wywalany użytkownikowi na ekranie i takie gdzie błąd był w jakimś dość przyjemnym widoku z instrukcją żeby poinformować support i pod spodem dane kontaktowe. 

To jest śmiech na sali bo każda szanująca się osoba, która zajmuje się utrzymywaniem aplikacji wyłapuje od razu błędy w logach, lub narzędziami do monitoringu.

Korzystaj z frameworków. Możesz w nich ustawić środowisko w jakim jest uruchamiany serwer. Dla dev widzisz widzisz wszystkie błędy, dla prod jest ich mniej a user widzi to, o czym Ty zdecydujesz.

komentarz 7 września 2018 przez BetBet Użytkownik (550 p.)
W jaki sposób powinienem obsługiwać te błędy, tzn. powiedzmy ze piszę sobie jakąś metodę gdzie daje jakiegoś ifa i jeśli nie będzie spełniony to rzucam wyjątek, potem podczas wywołania tej metodu opieczętowuje ją w try i w catch zapisuje do pliku z logami godzinę i datę pojawienia się wyjątku i jakieś tam informacje i co dalej? Normalnie z tego co widzę to kod idzie dalej jak by nic się nie stało, czyli co, znowu mam w klauzuli catch napisać throw $e? żeby ktoś kto korzysta z tej metody nie musiał szukać wyżej co spowodowało błąd?
komentarz 7 września 2018 przez Ehlert Ekspert (204,910 p.)

Generalnie jeśli nie piszesz z jakimś kernelem, lub bardziej rozbudowaną architekturą, to bez sensu jest korzystać z wyjątków. Nie masz nawet jakiegoś rozsądnego miejsca żeby je łapać. Dlatefk pisałem o frameworkach. 

Cały patent polega na tym  żeby tak pisać oprogramowanie aby w kodzie było rzucanie wyjątkami. Ale nigdy do tego nie dochodziło laugh

komentarz 7 września 2018 przez BetBet Użytkownik (550 p.)

 Używam symfony 4, co mi to daje?


Nie masz nawet jakiegoś rozsądnego miejsca żeby je łapać

Znaczy czasem jest potrzeba ich złapania i obsłużenia w przypadku błędu, sam jeszcze takich bardzo newralgicznych punktów nie pisałem ale wiem, że czasem tam trzeba zamknąć otwarty plik czy połączenie z bazą.

Podobne pytania

+1 głos
0 odpowiedzi 62 wizyt
pytanie zadane 2 listopada 2020 w C# przez XavRock Użytkownik (990 p.)
0 głosów
1 odpowiedź 105 wizyt
pytanie zadane 3 stycznia 2020 w C# przez dawid2002 Mądrala (5,080 p.)
0 głosów
1 odpowiedź 238 wizyt
pytanie zadane 3 lutego 2018 w PHP przez mi-20 Stary wyjadacz (12,530 p.)
Porady nie od parady
Publikując kody źródłowe korzystaj ze specjalnego bloczku koloryzującego składnię (przycisk z napisem code w edytorze). Nie zapomnij o ustawieniu odpowiedniego języka z rozwijanego menu oraz czytelnym formatowaniu kodu.Przycisk code

84,762 zapytań

133,562 odpowiedzi

295,998 komentarzy

56,017 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...