Книга: Основы объектно-ориентированного программирования
Как отказаться сразу
Как отказаться сразу
Последнее высказывание достойно возведения в ранг принципа.
Принцип отказа
Завершение выполнения предложения rescue, не включающее инструкции retry, приводит к тому, что вызов программы завершается отказом.
Так что, если и были вопросы, как на практике возникает отказ (ситуация (4) в классификации исключений), то это делается именно так, - при завершении предложения rescue.
В качестве специального случая рассмотрим программу, не имеющую предложения rescue. На практике именно этот случай характерен для огромного большинства программ. В разрабатываемом подходе к обработке исключений лишь избранные из поставляемых программ должны иметь такое предложение. Игнорируя объявления и другие части программы, можно полагать, что программа без предложения rescue имеет вид:
routine is
do
body
end
Тогда, приняв, как временное соглашение, что отсутствие предложения rescue эквивалентно существованию пустого предложения rescue, наша программа эквивалента программе:
routine is
do
body
rescue
-- Здесь ничего (пустой список инструкций)
end
Из принципа Отказа вытекают следующие следствия: если исключение встретилось в программе, не имеющей предложения rescue, то эта программа вырабатывает отказ, включая исключение у вызывающей программы.
Рассмотрение отсутствующего предложения rescue, как присутствующего пустого предложения, является подходящей аппроксимацией на данном этапе рассмотрения. Но нам придется слегка подправить это правило, когда начнем рассматривать эффект исключений на инвариант класса. |
- Предложение, от которого невозможно отказаться
- Глава 3 Предложение, от которого нельзя отказаться: устанавливаем финансовые отношения с помощью трипваера
- Как поступить, если надо переименовать сразу большое количество файлов?
- Как автоматически запускать ту или иную программу сразу после запуска Windows?
- Можно ли отказаться от Проводника? Мне удобнее работать с Total Commander, но Проводник все равно постоянно «висит» в па...
- Как закрыть сразу все открытые документы?
- Глава 3 Как сразу «зацепить» адресата – начало
- Сразу после интервью
- 2. Как разработать предложение, от которого невозможно отказаться
- Его вам сразу вклю?чат, а может быть, включ?т
- Если успех не приходит сразу
- Возьмите комментарии сразу у нескольких экспертов