1

最近,我一直在争论是否在错误的用户输入上抛出异常。

示例:虽然我的帐户未激活,但我正在尝试登录。作为 OO 语言的程序员,我可以通过几种方式来处理这个问题。对于这种情况,让我们坚持这两个:

  1. 以具有代表性的方式Exception从当地抛出一个习俗,延伸。抓住这个在ServiceExceptionclass处理用户输入时捕捉到这一点。
  2. 使用aValidator调用本地Service查看该账号是否登录。

像许多其他人一样,我的愿景是Exception代表了程序中的错误。例如,数据库无法访问,解析数据时出错。

许多其他人的愿景也是,在未激活的情况下登录的情况在任何用例上都不是成功的场景,因此会失败。这不应该发生,值得抛出Exception

就个人而言,我会用 a 来处理这种问题Validator,坚持Exceptions 只是因为程序中的错误。但是,尽管如此,我想就哪种情况更受欢迎得到建设性的答案。如果可能,请参阅任何文档。我正在使用Java,虽然这个问题不限于任何语言(只要它是 OO 我猜)。

4

1 回答 1

1

如果出现验证错误,您的应用程序流程必须中断。例如,如果提供了无效的邮件地址,您必须终止正在播放的进程。因此,异常可用于用户输入验证。

作为示例使用,您可以检查 JSF。它得益于 Java 的异常机制来处理用户输入验证。以下链接可能很有用:

于 2013-10-16T05:49:47.467 回答