![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
Witam
Jestem w trakcie pisania biblioteki - ujednoliconego API - służącej do obsługi usług rozwiązywania captch. Nie muszę chyba nikogo przekonywać, że dobrze zaprojektowany system wyjątków to podstawa. Niestety nigdy się w to nie bawiłem, tzn. często używam wyjątków, ale nigdy nie próbowałem definiować własnych klas wyjątków. Przeczyłem ten artykuł: http://blogs.msdn.com/b/kcwalina/archive/2...ierarchies.aspx Uznałem że zaproponowany tam podział na "usage exception" oraz "system exception" wydaje się rozsądny. Moj kod wygląda następująco:
(przepraszam za tabulatory ale odzwierciedlają one hierarchę). Pytanie: Co należałoby tu zmienić, czy np. "202: insufficient funds" pasuje bardziej do "SystemLogical_Exception" czy może "Usage_Exception". Czy to co zrobiłem ma jakikolwiek sens? (IMG:style_emoticons/default/smile.gif) Ten post edytował wNogachSpisz 26.02.2013, 19:10:13 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 60 Dołączył: 25.02.2012 Ostrzeżenie: (0%) ![]() ![]() |
W tym przykładzie z
jeszcze lepiej by było rzucić BadMethodCallException. A tak w ogóle, to hierarchia wyjątków w PHP jest dziwna, słabo wyjaśniona w manualu i nie wiadomo w zasadzie jak z niej korzystać w spójny sposób (brak zgodności w tej kwestii wśród programistów). Same opisy tych klas są momentami śmieszne - szczególnie, gdy opisują błędy czasu kompilacji i wykonania (sic!). |
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 06:31 |