2014-10-21 6 views
-2

Мой вопрос, может быть довольно простой, но я хочу понять основное различие между проверкой данных и обработкой исключений и , когда вы должны использовать оба из них.В чем разница между проверкой данных и обработкой исключений?

Мне сказал кто-то, что вы никогда не должны использовать обработку исключений в своем коде, если не будете абсолютно необходимы, потому что исключения усложняют ваш код. Однако не являются ли утверждения try-catch-finally (обработка исключений) хорошим способом отделить бизнес-логику и пользовательский интерфейс? Каковы наилучшие методы при проверке ввода пользователя и отображении сообщений об ошибках в пользовательском интерфейсе?

+1

Можете ли вы, пожалуйста, объяснить мне, как вы думаете, что заявления try-catch отдельной бизнес-логики и пользовательского интерфейса? Кроме того, этот вопрос слишком широк, единственный ответ, который действительно может дать вам, - «это зависит». –

+0

Моя логика заключалась в том, что в вашей бизнес-модели у вас были бы утверждения try-catch, а если бы что-то недействительное (возникло исключение), вы передали бы сообщение в пользовательский интерфейс и отобразили его пользователю. – Theo

+0

ths - это неправильное место, чтобы спросить, поскольку это не проблема, с которой вы сталкиваетесь. Попробуйте здесь: https://programmers.stackexchange.com/ – user1666620

ответ

0

Проверка данных означает проверку данных перед выполнением операций, которые могут потерпеть неудачу, например, проверить на 0 перед делением.

Обработка исключений означает корректное поведение, если операция завершилась неудачей, например, если запрос базы данных истекает.

Как выбрать между буксиром, зависит от того, что вы делаете. Хотя использовать обработку исключений не так просто, чтобы поймать 0-devisor, так как вы можете легко проверить его раньше, вы должны использовать обработку исключений для операций, которые общаются с другими ресурсами (запросы к базе данных или сокеты TCP не удастся, или даже диски выйдут пространства).

+0

Каковы рекомендации по проверке достоверности данных? Я сделал это раньше для школы, но это было тогда, когда у меня было только одно классное приложение; теперь, когда я использую больше классов, я хочу создать класс проверки для выполнения всех моих проверок данных. Каков наилучший способ представить информацию пользователю, если данные недействительны? – Theo

+0

Если вы используете классы для хранения данных, которые можно обрабатывать, вы можете реализовать метод проверки в классе, чтобы данные и бизнес-логика для проверки данных были в одном месте. – user3767013

 Смежные вопросы

  • Нет связанных вопросов^_^