Цитата:
Сообщение от
S.Kuskov
Но как и остальным написавшим мне тоже это всё не нравится. Якобы "безопасный" метод, который перехватывает свои исключения и не отдаёт их наружу не должен быть нормой.
да, было бы нормой.
но в аксапте в транзакции срабатывает только самый внешний catch.
поэтому никаких гарантий перехват не даст.
методы NoThrow могут означать, что сам метод исключений не бросает.
но исключение внутри этого метода может бросить ядро.
Поэтому суффикс NoThrow не дает никаких гарантий относительно исключений.
методы с OrThrow означают, что метод содержит throw, который явно вставил автор кода.
Цитата:
Сообщение от
S.Kuskov
Это скорее исключение, синтаксический сахар. Это грязный метод, после вызова которого остаётся неопределённость: а что именно выполнилось, что откатилось. Лучше так не делать, а если уж делать такие методы, то пусть их будет видно издалека.
угу. я собственно поэтому и спрашиваю
да, именно про синтаксический сахар, который помогает понять код.
и самому не забывать о.
пример написания самих методов
https://github.com/mazzy-ax/SysUtil/....xpp#L498-L519
пример использования
я привел выше
Цитата:
Сообщение от
trud
а почему только boolean в параметрах. иногда приходится писать что-то где есть 3 значения.
пиши.
Цитата:
Сообщение от
trud
Т.е. это один метод типа validateAndWrite с параметром типа enum
(o_O)
ты ведь обратил внимание, что мы не сам метод validateAndWrite обсуждаем?
а оформление, которое касается исключений (Throw - NoThrow - OrThrow).
и о том, как оформление кода может помочь, а может запутать читателя.