Какова наилучшая практика, когда вы имеете дело с исключениями?Лучше ли исключать исключения или избегать исключений любой ценой?
Обычно я пишу код, чтобы избежать исключений любой ценой, мой код обычно имеет множество условий, и если я имею дело с нормализованными базами данных, я обычно пишу кучу запросов, которые дважды проверяют, есть ли значения уже там.
Однако, я видел код, который просто слушает исключения, и если возникает исключение, то оно обрабатывается соответствующим образом.
Каковы наилучшие методы в этом сценарии?
Лучше избегать ошибок и обрабатывать их до того, как они произойдут, или просто поймать исключение и направлять его в нужное место?
С точки зрения производительности, я видел, что быстрее поймать исключения; особенно если есть база данных.
Однако я считаю, что некоторые исключения слишком общие для конкретных сценариев, и трудно определить, почему это исключение произошло, если вы не видите трассировку стека.
При этом, если у вас нет инструмента для создания отчетов об ошибках на месте (вал, новая реликвия и т. Д.), Особенно сложно найти трассировку стека в журналах, если у вас есть клиентские интерфейсы, и вы получаете билеты, которые содержат только слова «500 ошибка на странице X».
Если этот вопрос является слишком широким для StackOverflow, не стесняйтесь, чтобы закрыть его