title: What is the difference between data validation and exception handling?
body: <p>My question, may be pretty basic, but I want to understand the core difference between data validation and exception handling, and <strong>when you should use</strong> both of them.</p>
  
  <p>I was told by someone that you should never use exception handling in your code unless you absolutely have to because exceptions complicate your code. However, aren't try-catch-finally statements (exception handling) a good way to separate business logic and the UI? What are best practices when validating user input, and displaying error messages in the UI?</p>