-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!fu-berlin.de!news.uzoreto.com!aioe.org!
.POSTED.nyPK7k8oeDafdNpooDsxZQ.user.gioia.aioe.org!not-for-mail
From: Mateusz Viste <m...@x...invalid>
Newsgroups: pl.comp.programming
Subject: Re: Czy biblioteka powinna rzucać wyjątki?
Date: Sat, 4 Apr 2020 21:51:33 +0200
Organization: . . .
Lines: 29
Message-ID: <20200404215133.35e6e612@mateusz>
References: <5...@g...com>
NNTP-Posting-Host: nyPK7k8oeDafdNpooDsxZQ.user.gioia.aioe.org
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-Complaints-To: a...@a...org
X-Notice: Filtered by postfilter v. 0.9.2
Xref: news-archive.icm.edu.pl pl.comp.programming:214810
[ ukryj nagłówki ]2020-04-04 o 12:10 -0700, Maciej Sobczak napisał:
> Spotkałem się też z opinią, że biblioteka nie powinna rzucać
> wyjątków, bo w ten sposób narzuca ten aspekt interfejsu aplikacji -
> ale już aplikacja końcowa może sobie korzystać z wyjątków (które sama
> sobie zdefiniuje, sama rzuci i sama złapie), bo nikomu innemu tego
> nie narzuca.
Podzielam ten pogląd. Korzystając z biblioteki, oczekuję maksymalnie
uproszczonego działania, które nie zakłóci mi mojego workflow.
Łapanie wyjątków jest mi w tym kontekście wyjątkowo nie po drodze. Inna
sprawa, że w praktyce - jak zauważyłeś - jest jak jest.
Z tego samego powodu ubolewam nad funkcjami, które generują sygnały...
np. write() potrafi rzucić SIGPIPE, co narzuca na programiście by
uprzednio poustawiał sobie łapanie lub ignorowanie sygnałów. Co innego
oczywiście sygnały typu SIGSEGV, SIGQUIT czy SIGFPE - te występują w
przypadkach, w których tak czy inaczej sytuacja jest beznadziejna.
Mateusz
Następne wpisy z tego wątku
- 05.04.20 23:31 Maciej Sobczak
Najnowsze wątki z tej grupy
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-05-07 Chess
- 2024-05-07 Do czego nadaje się QDockWidget z bibl. Qt?
- 2024-05-07 Vitruvian Man - parts 7-11a
- 2024-05-07 Warszawa => International freight forwarder <=
- 2024-05-07 Zielona Góra => Inżynier R&D Mechanik <=
- 2024-05-07 ministranci
- 2024-05-07 Warszawa => Manager Sprzedaży <=
- 2024-05-07 Białystok => Inżynier DevOps (projekt JP) <=
- 2024-05-07 Ulm => IT Systems Administrator and Customer Support Engineer <=
- 2024-05-07 Warszawa => Junior Frontend Developer <=
- 2024-05-07 Ulm => Integration & Test Engineer <=
- 2024-05-07 Warszawa => Business Systems Sales Representative <=
- 2024-05-07 Białystok => Technical Lead ( (Java Background)) <=
- 2024-05-07 Białystok => React Native Developer <=
- 2024-05-07 Białystok => Technical Leader (Java Background) <=