Re[4]: Почему редко используются assert'ы?
От: Batiskaf Израиль http://www.mult.ru/
Дата: 09.10.05 12:54
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Ниже по ветке я уже говорил, что assert'ы нужны для разработчика кода, не для пользователя exe'шника.


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

А>Все данные вводимые пользователем проверяются сразу при их вводе (вот где используютеся код constraine класса SomeClass, напр. is_valid_prop2()), в случае неудачной проверки, выводится сообщение, где предлагается ввести корректные данные, или выбрасывается исключение, зависит от типа приложения. Коду SomeClass неважно где его будут использовать, поэтому он не знает что делать в случае неверного prop2_: исключение, код ошибки, сообщение... Задача разработчика класса SomeClass предоставить набор методов валидации данных; задача разработчика приложения, использующего SomeClass, пропускать все входные данные для SomeClass, вводимые пользователем, через соответствующие функции валидации, и написать код для обработки некорректных входных данных.


да, только сообщениями пользоваться не стоит, SomeClass может использоваться в самых разных средах, с разными типами аллертов. Принимать решение о выбрасывании сообщений должен пользовательский код, если он может показать месаджбокс или распечатать html, или бибикнуть на экране деньгомата в банке, в зависимости от системы.
Will I live tomorrow? Well I just can't say
But I know for sure — I don't live today.
Jimi Hendrix.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.