Re[5]: Result objects - все-таки победили Exceptions?
От: vsb Казахстан  
Дата: 07.01.25 12:05
Оценка:
Здравствуйте, ·, Вы писали:

vsb>>Я не отрицаю некоторого смысла во всей этой идее проверяемых исключений, но конкретно в Java реализация фатально плохая. И я не уверен, что знаю, как сделать лучше.

·>Основная проблема не в исключениях самих по себе, а в том, что они слишком "другие" и плохо совмещаются с другими фичами ЯП.

·>Например, был у тебя for-цикл, решил переписать на stream с лямбдами и checked исключения, внезапно, через лямбду уже не передать.


·>Распараллелить кусок кода, и вот теперь у тебя проблема как пробрасывать исключения между тредами и что с ними делать потом.


Проверяемые исключения были плохой идеей до лямбд.

В принципе я не вижу ничего, что мешало бы сделать лямбды с нормальными проверяемыми исключениями. Немного язык доработать пришлось бы, но ничего сверхестественного. И сейчас можно писать interface Runnable<E> { void run() throws E; }, но это работает только с одним исключением. Нужно было сделать непредставимый тип вроде SQLException | IOException, который бы присваивался типу E. Ну и спроектировать стримы с учётом этой фичи. И было бы нормально. Но это так, к слову.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.