0
Exceptions
Started by Ilg, Фев 14 2008 07:30
11 replies to this topic
#1
Отправлено 14 Февраль 2008 - 07:30
раньше использовал в джава только Checked Exceptions, но постепенно утомился изменять сигнатуры методов и перешел на Runtime.
что более оптимально, и вообще, в языках, где исключения не единственный способ контроля ошибок, Exceptions это зло или нет?
что более оптимально, и вообще, в языках, где исключения не единственный способ контроля ошибок, Exceptions это зло или нет?
#2
Отправлено 15 Февраль 2008 - 07:00
Перешел на Runtime почти полностью. Checked exceptions - это несусветное зло. По-моему checked exceptions привносят больше проблем, чем решают.
#3
Отправлено 04 Май 2008 - 08:01
Runtime в РНР
#4
Отправлено 21 Июнь 2009 - 12:06
Хотя вот не знаю - triggers vs exceptions =)
#5
Отправлено 21 Июнь 2009 - 12:28
я так понимаю что ты о sql. триггеры приносят больше проблем чем решают, хотя их удобно использовать
#6
Отправлено 21 Июнь 2009 - 05:18
А можешь объяснить смысл и короткое сравнение триггеров и исключений?
#7
Отправлено 21 Июнь 2009 - 06:20
имхо у них разное назначение, триггеры все же для дополнительной обработки в моменты изменения состояния БД, а исключения для обработки ошибок и искл. ситуаций (сорри за банальность)
в моем представлении, можно применять триггеры и для обработки ошибок, выглядит только как то это странно, всех ошибок в триггере не отловишь. да и если у тебя операция такая, что возможно все проверить в триггере, опять же может быть ситуация что у тебя часть проверок будет в before insert триггере, а часть в after insert (insert взят для примера). короче, спагетти неизбежно.
к тому же триггеры замедляют операции изменения, и могут замедлить работу других операций по таблице.
если хочешь подробно про триггеры и вообще по базам данных, спроси sapsana, он у нас спец по таким делам. я с СУБД объектами редко работаю, только если задача вынуждает.
в моем представлении, можно применять триггеры и для обработки ошибок, выглядит только как то это странно, всех ошибок в триггере не отловишь. да и если у тебя операция такая, что возможно все проверить в триггере, опять же может быть ситуация что у тебя часть проверок будет в before insert триггере, а часть в after insert (insert взят для примера). короче, спагетти неизбежно.
к тому же триггеры замедляют операции изменения, и могут замедлить работу других операций по таблице.
если хочешь подробно про триггеры и вообще по базам данных, спроси sapsana, он у нас спец по таким делам. я с СУБД объектами редко работаю, только если задача вынуждает.
#8
Отправлено 21 Июнь 2009 - 06:25
исключения в субд это конечно отдельная история, я юзал только в mssql. приятного тоже мало, для того чтобы различать ошибки нужно оперировать кодами ошибок, ничего приятного в общем но опять же, если мне нужно будет выбирать между возможностью реализации обработки ошибок в субд, я выберу исключения в сторках, а не триггеры.
#9
Отправлено 22 Июнь 2009 - 04:55
А можешь объяснить смысл и короткое сравнение триггеров и исключений?
не правильно сравнить триггеры и ексепшны.. они совсем разные понятия..
триггеры..
исключения..
#11
Отправлено 22 Июнь 2009 - 06:13
А если триггеры не в СУБД?
http://ru.php.net/ma...igger-error.php
http://ru.php.net/ma...igger-error.php
тестируешь наши знания технологий и языка программирования? ))
ответ на твой вопрос в твоей же ссылке есть..
#12
Отправлено 22 Июнь 2009 - 07:21
Elkaz,
а если триггеры не в субд, то тебе надо менять язык программирования (шутка)
если твой код в пхп ООП то надо применять исключения, если у тебя процедурный код, то применяй триггеры и error_handler. если спросишь почему, то потому что триггеры были привнесены в язык раньше, когда не было исключений, чтобы предоставить контроль ошибок. если скажешь, что замедляет работу скрипта, то есть опкод кешеры.
а если триггеры не в субд, то тебе надо менять язык программирования (шутка)
если твой код в пхп ООП то надо применять исключения, если у тебя процедурный код, то применяй триггеры и error_handler. если спросишь почему, то потому что триггеры были привнесены в язык раньше, когда не было исключений, чтобы предоставить контроль ошибок. если скажешь, что замедляет работу скрипта, то есть опкод кешеры.
Цитата
тестируешь наши знания технологий и языка программирования?
0 пользователей читают этот форум
пользователей, гостей, скрытых