|
5
|
| Jon Davis Glenn Block · 技术社区 · 17 年前 |
|
|
1
4
我认为这听起来像是一堆“最佳实践”和“设计方法”出了问题,但现在对我来说有点道理了。这样看: 想象一下,将验证放在业务对象中,但在表示层中使用“如果验证失败,我该怎么办”。这将允许多个不同的表示层重用相同的验证逻辑,但处理错误的方式不同。
n、 b.你可以就抛出异常争论不休,这只是一个例子。返回状态,布尔,任何你想要的。 |
|
|
2
2
告诉:
询问:
|
|
|
3
0
我想知道这是否更像是一个“关注点分离”的问题,而不是“告诉-不要问”。谁负责验证数据?可以说,这是坚持下去的原因。 当然,有时在多个层中验证数据是有用的。如果你的应用程序是这样,我在“用户”层中公开验证逻辑没有问题。但我仍然希望在业务层使用它。 |