( sz332 | 2015. 07. 13., h – 09:21 )

Nekem igazából nincs semmi bajom az exception-nal, mert azt mutatja, hogy itt bizony hiba LEHET és a fejlesztőt RÁKÉNYSZERITI, hogy csináljon valamit
a hibával. Ha lehetőséget biztosítunk a fejlesztőnek arra, hogy ne is foglalkozzon a hibával, akkor a fejlesztő jó eséllyel figyelmen kívül fogja hagyni.

Példa:

f, err := os.Open("filename.ext")

if err != nil {
log.Fatal(err)
}

Az első, amit kapásból ki fog a legtöbb fejlesztő hagyni, az az if err != nil... ráadásul nincs annál rondább, amikor egy kódrész tele van ilyen vizsgálatokkal.
Szerintem sokkal szebb, ha a hibajelzést blokkonként egy helyen tudom kezelni (pseudokód)

try{

f := os.Open("")

f.read()
f.write()

...

} catch (Exception e){
handleError(e);
}

Aztán.

http://blog.philipphauer.de/checked-exceptions-are-evil/

Ebben a cikkben az exception körüli problémákra azért jól rámutat a szerző, azonban nem vagyok meggyőződve arról, hogy a burkoló exception-nak Runtime
exception-nak kellene lennie. Szerintem ugyanúgy checked exception-nak kell lennie, beburkolva a belső exception-öket.