Exception центрально, но не верно
Проходя собеседования и решая тестовые задачи нужно показывать мастерство. В программировании принято все неопределенное исключать. Для того чтобы выявлять неопределенность вводиться много условий и чтобы эти условия не плодить для всех внешних и внутренних методов лучше использовать механизм try … throw … catch (TTC). Исключения только часть возможностей выявлять неопределенности.
В программе нужно выдавать наружу: 1. Ошибки - error Ошибки которые блокируют работу
2. Исключения - еxception Для возможного продолжения работы после неопределенности или ошибки
3. Сообщения открытые explicit message Для подтверждения действий, чтоб быть уверенным что прошло без неопределённостей. То есть для безопасности. Может пригодится для отображения результата транзакции.
Далее будем считать: Обычно создают очередь сообщений и отправляют сообщение об успехе в очередь, но можно создать поток с выброшенным исключением и забирать исключение в специальном потоке репортере. Таким образом использовать TTC и для сообщений. Это упрощает работающий код. Из работающего кода выброс исключения будет через отдельный метод throwMessage(new message("Сообщение!", now, args);
ВАЖНО: Это нужно чтобы сохранять, через единый механизм, все действия: ошибки, исключения, сообщения, логи, взломы, моменты переключения.
4. Сообщения неявные для отчетности - implicit report message При логировании и отчётности для аудита
5. Сообщения неявные для скрытой ошибки - implicit hided message Для логирования взломов и переключения стстемы
Таким образом у класса Throwable должно быть пять наследников
Бояться того чтоб исключения отлавливаемая часть странно. Подумайте как может быть сервер без настроенного фаервола и антивируса. А удобный механизм TTC это лучшая масштабируемость и безопасность от ошибок программиста.
Замечание: Сообщение неявное для скрытой ошибки не может наследоваться от ошибки потому что можно с помощью TTC отловить слишком многое и это не безопасно! Это неявное сообщение лучше назвать Сообщение скрытой ошибки.
· 14.07
Выкинь TTC - не дает чистоты, удобства и понимания он. Думай дальше, думай чище.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён