Изящный выход - Graceful exit
А изящный выход[1] (или же изящная обработка) простой идиома программирования[нужна цитата ] при этом программа обнаруживает серьезный ошибка состояние и в результате "выходит изящно" контролируемым образом. Часто программа печатает описательный сообщение об ошибке к Терминал или же бревно как часть изящного выхода.
Обычно код для изящного выхода существует, когда есть альтернатива - позволяющая избежать обнаружения ошибки и необработанный - приведет к ложным ошибкам или последующему аномальному поведению, которое будет более трудным для программист к отлаживать. Код, связанный с плавным выходом, может также выполнять дополнительные действия, например закрытие файлы, чтобы гарантировать, что программа оставляет данные в согласованном состоянии с возможностью восстановления.
Изящные выходы не всегда желательны. Во многих случаях прямое крушение может дать разработчику программного обеспечения возможность подключить отладчик или собрать важную информацию, такую как дамп ядра или же трассировки стека, чтобы диагностировать основную причину ошибки.
На языке, поддерживающем формальный Обработка исключений, постепенный выход может быть последним шагом в обработке исключения. В других языках изящные выходы могут быть реализованы с помощью дополнительных операторов в местах возможных ошибок.
Фраза «изящный уход» также была обобщена для обозначения прекращения работы или отношений в жизни, которые закончились.[2][3]
В Perl
в Perl язык программирования, плавные выходы обычно реализуются через умереть оператор. Например, код для открытия файла часто выглядит следующим образом:
# Откройте файл myresults для записи или умрите с соответствующим сообщением об ошибке.открыто ПОЛУЧЕННЫЕ РЕЗУЛЬТАТЫ, '>', "мои результаты" или же умереть "невозможно записать в файл myresults: $!";
Если попытка открыть файл мои результаты
сбой, содержащая программа завершится с сообщением об ошибке и статус выхода указывает на ненормальное завершение.
В Java
в Ява язык программирования, попробуй поймать блок часто используется для ловли исключения. Весь потенциально опасный код помещается внутри блока и в случае возникновения исключения останавливается или перехватывается.
пытаться { // Пытаемся прочитать файл "file.txt" Сканер sc = новый Сканер(новый Файл("file.txt")); пока (sc.hasNextLine()) Система.из.println(sc.readLine()); sc.Закрыть();} ловить(IOException е) { // Не удалось прочитать файл Система.ошибаться.println("Не удалось прочитать файл. Трассировка стека:"); е.printStackTrace();}
В C
В C можно использовать ошибка (3) функция, предусмотренная в GNU посредством Библиотека GNU C.
int fd;если ((fd = открыто("/ dev / urandom", O_RDONLY)) < 0) ошибка(1, errno, "Не удалось открыть");
Если первый параметр не равен нулю, эта функция выйдет из родительского процесса и вернет этот параметр.
Смотрите также
Рекомендации
- ^ "изящный выход". Бесплатный словарь. Получено 25 сентября, 2016.
- ^ Эллен Гудман. Цитата Эллен Гудман: «Есть уловка в« изящном выходе ». Это началось ..."". Goodreads.
Есть уловка с «изящным выходом». Он начинается с видения, позволяющего распознать, когда работа, жизненный этап или отношения закончились - и отпустить. Это означает оставить то, что закончилось, не отрицая его действительности или его прошлой важности для нашей жизни. Это включает в себя чувство будущего, веру в то, что каждая линия выхода - это вход, что мы движемся вверх, а не уходим.
- ^ Сью Шелленбаргер (18 августа 2015 г.). «Как изящно бросить работу». Журнал "Уолл Стрит.
Изящный уход может улучшить репутацию сотрудника и укрепить ценные отношения. Плохой может нанести серьезный ущерб обоим.
Этот компьютерное программирование -связанная статья является заглушка. Вы можете помочь Википедии расширяя это. |