![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
Zastanawiam sie jak rozwiazac problem z wyjatkami, otoz:
Tworze sobie pochodne klasy Exception: MessageException (mniej powazne bledy) FatalException (powazny blad zatrzymujacy dzialanie aplikacji) MessageException chcialbym uzywac np. do problemow typu: Niepoprawne ID, Nie ma takiego rekordu w bazie, etc., a FatalException do sytuacji gdy np. nie ustanowiono poleczenia z db
Efektem tego ma byc ze jezeli nie polaczy sie z baza dostanie na ekranie tylko komunikat o bledzie (FatalException), zas jesli wystapi blad w klasie Users (MessageException) to wsywietlony zostanie szablon z komunikatem o bledzie (header, komunikat, footer) Jak to rozwiazac? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 77 Pomógł: 5 Dołączył: 29.03.2006 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
I może ja się wypowiem kilka słów na temat wyjątków.
Ograniczenie klas wyjątków do właśnie dwóch klas Fatal i Notice ( czy jak je tam nazwiesz ), nie jest zbyt dobrym rozwiązaniem. Z tego względu że doprowadza do sytuacji w której nie wiesz tak na prawdę na jakim etapie coś padło. Nie jesteś w stanie dla odpowiedniego błędu przygotować akcji zastępczej, no chyba że zrobisz duuuży switch z numerami błędów, nie wspominając o tym aby pamiętać który numer co robi. A dolicz sobie do tego zle wyłapywanie wyjątków w zagnieżdzonym try...catch (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Popatrz:
Ten post edytował Whisller 5.12.2007, 13:59:33 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 03:10 |