🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.objects
Article #14389

Re: Wyrzucenie wyjątku, czy zwrócenie null?

#14389
From: Przemek Pokrywka
Date: Tue, 28 Mar 2006 21:19
36 lines
2487 bytes
Marcin 'Qrczak' Kowalczyk napisał(a):
> Przemek Pokrywka <adres@zastrzezony.com> writes:
> 
> 
>>No dobrze, załóżmy więc, że sytuacja nie jest wyjątkowa - zwrócę NULL.
>>Co ma zrobić w tej sytuacji kod wywołujący metodę find?
> 
> 
> Nie da się odpowiedzieć na tak ogólne pytanie. Zależy, jakie
> zachowanie jest po nim oczekiwane.

Najprościej ujmując, oczekiwane jest prawidłowe obsłużenie obydwu 
sytuacji. Najczęściej (choć nie zawsze) oznaczać to będzie występowanie 
jakiegoś rodzaju identyfikacji (if, try/catch, ...) danego przypadku w 
okolicach wywołania metody find.

>>Odporny na błędy kod sprawdzi oczywiście, czy wartość zwrócona przez
>>find nie jest aby NULLem. Czy jednak kod upstrzony wieloma warunkami
>>if jest bardziej czytelny i lepiej wyraża intencję autora od kodu
>>zawierającego klauzule obsługi wyjątków?
> 
> 
> Jeśli sytuacja, kiedy elementu nie ma w spisie, jest normalna, to tak.
> Jeśli jest wyjątkowa i w takim przypadku należy przerwać dalsze
> obliczenia dużej części programu, to nie. (Dobry interfejs spisu
> udostępnia takie i takie wyszukiwanie.)
> 

W zasadzie zgodzę się ze wszystkimi Pana wnioskami. Sęk jednak w tym, że 
niemal nie spotyka się sytuacji w 100% równouprawnionych. Oczywiście, 
jednak czasem takie się zdarzają i dlatego uważam za słuszną uwagę o 
dobrym interfejsie spisu.

--
Pozdrawiam,
Przemysław Pokrywka
Technical Details
Message-ID: <e0c99v$22v$1@news.onet.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!newsfeed.silweb.pl!news.onet.pl!not-for-mail
References: <e09c3r$lg3$1@news.onet.pl> <e09f0h$cis$1@news.task.gda.pl> <e09gjn$737$1@news.onet.pl> <87u09jmujs.fsf@qrnik.zagroda>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!newsfeed.silweb.pl!news.onet.pl!not-for-mail
From: Przemek Pokrywka <adres@zastrzezony.com>
Newsgroups: pl.comp.objects
Subject: Re: Wyrzucenie wyjątku, czy
 zwrócenie null?
Date: Tue, 28 Mar 2006 23:19:58 +0200
Organization: Onet.pl
Lines: 36
Message-ID: <e0c99v$22v$1@news.onet.pl>
References: <e09c3r$lg3$1@news.onet.pl> <e09f0h$cis$1@news.task.gda.pl> <e09gjn$737$1@news.onet.pl> <87u09jmujs.fsf@qrnik.zagroda>
NNTP-Posting-Host: 041.inet.polhost.pl
Mime-Version: 1.0
X-Trace: news.onet.pl 1143580800 2143 80.48.120.41 (28 Mar 2006 21:20:00 GMT)
X-Complaints-To: usenet@news.onet.pl
NNTP-Posting-Date: Tue, 28 Mar 2006 21:20:00 +0000 (UTC)
X-Sender: 5aB4pqMdeQG1O30L902dNmlAzoKeNKcS
In-Reply-To: <87u09jmujs.fsf@qrnik.zagroda>
X-Accept-Language: pl, en-us, en
User-Agent: Mozilla Thunderbird 1.0.2 (Windows/20050317)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit