Wpis z mikrobloga

Mirki, jak widzicie używanie checked wyjątków w nowych projektach? Jak wiadomo nie są one za bardzo kompatybilne z Java 8, z lambdami, streamami itd. Jakie są ich największe zalety, w projekcie gdzie na końcu wszystkie runtime'owe lądują w jakimś handlerze? Wiadomo, że łatwiej śledzić ścieżkę, no ale gdy w grę wchodzą refleksje to nie zawsze to dużo pomaga. No i jeszcze zasada otwarte/zamknięte, Robert C. Martin approved ( ͡° ͜ʖ ͡°)
#programowanie #java
  • 5
@baczus: zawsze od biedy można, kiedy jest taka potrzeba a nic to nie popsuje, zrobić własne interfejsy z try/catch i throw jakiegoś Runtime, no ale oczywiście to może narobić trochę problemów kiedy wyżej chcemy te błędy łapać, bo musimy łapać runtime i dopiero sprawdzać co jest w środku, ale zawsze zostają jakieś sneaky throws
@baczus: troszkę oftopując jest pewien mroczny trik optymalizacyjny oparty o checked exception (ale to taka bardziej ciekawostka niż coś realnego ;-))

String[] array = new String[]{"a1", "a2", "b1", "b2"};

for(int i=0;;i++) {
try {
System.out.println(array[i]);
} catch (ArrayIndexOutOfBoundsException ex) {
System.out.println("break!");
break;
}
}

( ͡° ͜ʖ ͡°)