Модераторы: Nastya, LSD
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> возбуждение исключений, для отлова ошибок 
:(
    Опции темы
 
Используете ли вы генерацию исключительных ситуаций в тех местах кода, которые "вроде бы" не должны сработать? И оставляете ли вы их в финальной версии программы
да, стараюсь подстраховаться везде [ 9 ]  [33.33%]
да, но только в спорных моментах [ 10 ]  [37.04%]
Да. но только во время тестирования [ 3 ]  [11.11%]
нет, никогда [ 5 ]  [18.52%]
Всего проголосовавших: 27
В этом опросе возможен один вариант ответа
Гости не могут голосовать 
Bose
Дата 26.10.2006, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: нет
Всего: 51



сабж
PM MAIL WWW Skype   Вверх
Snowy
Дата 26.10.2006, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: нет
Всего: 484



Использую AssErt. Удобно в отладке. 
Для компиляции релиза - отключаю в свойствах проекта или компиляцией проекта с ключём C-.
PM MAIL   Вверх
Bose
Дата 26.10.2006, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: нет
Всего: 51



Snowy, а встречаются ли у тебя в тексте такие конструкции:

Код

if SomeThingMustBeAlwaysTrue then
  DoSomethingMustBeDone
else
  assert (False, "Something goes wrong");

 smile 


PM MAIL WWW Skype   Вверх
Snowy
Дата 26.10.2006, 14:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: нет
Всего: 484



Нет. Для этого есть raise. А тут не так.
Код

  assert (not SomeThingMustBeAlwaysTrue, "Something goes wrong");
  DoSomethingMustBeDone

PM MAIL   Вверх
Bose
Дата 26.10.2006, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: нет
Всего: 51



Цитата(Snowy @  26.10.2006,  14:58 Найти цитируемый пост)
 assert (not SomeThingMustBeAlwaysTrue, "Something goes wrong");  
DoSomethingMustBeDone


Интересный вариант. Я о таком и не думал. Видимо сказывается привычка думать ветвлениями if..else..

PM MAIL WWW Skype   Вверх
Sunvas
Дата 26.10.2006, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: нет
Всего: 89



Использую аналогично как и Snowy.  smile 


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
Innuendo
Дата 30.10.2006, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 745
Регистрация: 24.12.2005
Где: Молдова

Репутация: нет
Всего: 6



Использую watchs и debugger'ы =) Но только после того, как самому через исключения не получается отловить проблему.

Сразу исключения нигде не пишу, пишу, когда при тесте что-то не работает, тогда пишу в каждом месте, чтоб понять что именно не работает=) и потихоньку отсеиваю их

Это сообщение отредактировал(а) Innuendo - 30.10.2006, 14:58


--------------------
=)
PM MAIL ICQ Jabber   Вверх
LSD
Дата 30.10.2006, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 3
Всего: 538



В Java assert-ы отключаются в рантайме.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Exception
Дата 1.11.2006, 12:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 2
Всего: 186



В .NET при компиляции убирается вызов любого метода, помеченного атрибутом Conditional(константа_компиляции), если эта константа не определена. Например, при компиляции в режиме Debug, этот код вызовет ошибку и напишет об этом в консоль:
Код
[Conditional("DEBUG")]
void Log(Exception ex)
{
    Console.WriteLine(ex);
}
// ...
try
{
    Assert.IsTrue(false);
}
catch (Exception ex)
{
    Log(ex);
}
Что самое смешное, при конфигурации Release метод Assert.IsTrue() тоже не будет вызван, поскольку он, как и Log(), помечен атрибутом Conditional.
P.S. Это тем явцам, что говорили, будто атрибуты - отстой :) .
P.P.S. Да шучу, шучу.

Добавлено @ 12:48 
Касательно исключений: выбрасываю и ловлю их почти везде. Конечно, это выглядит несколько громоздко, но зато, чтобы определить причину ошибки, достаточно посмотреть цепочку исключений.
PM   Вверх
GoodBoy
Дата 1.11.2006, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Главный джедай
****


Профиль
Группа: Модератор
Сообщений: 3886
Регистрация: 8.1.2003
Где: КМВ

Репутация: 1
Всего: 83



Exception, ты возбудился???  smile 


--------------------
Чем дальше в лес, тем толще партизаны...

Цитата(igorold @  1.5.2016,  17:40 Найти цитируемый пост)
Индейцы не обратили внимания на поток беженцев из Европы… Теперь они живут в резервациях. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Опросы"
Smartov
Nastya

В этом разделе собраны темы для опросов участников форума. Просьба не создавать здесь темы не касающиеся всех участников, узкоспециальные или с религиозным оттенком.

Темы в этом разделе будут тщательно отбираться модераторами, поэтому старайтесь задать вопрос и варианты ответа продуманно и взвешенно, постараться учесть все возможные варианты.



С уважением, Smartov, Nastya.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Опросы | Следующая тема »


 




[ Время генерации скрипта: 0.0911 ]   [ Использовано запросов: 24 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.