数据层是否验证用户的任何输入?还是只存储数据?
示例 - 用户将电子邮件添加到他的个人资料。
这是正确的吗?
演示层 - 验证电子邮件格式是否有效(客户端)
逻辑层
- 验证电子邮件格式是否有效(再次?)
- 设置电子邮件类型(即是主要电子邮件?)
- 检查允许存储电子邮件的记录限制
数据:
- 存储电子邮件记录
逻辑:
- 向表示层发送通知
- 通过电子邮件发送通知
数据层是否验证用户的任何输入?还是只存储数据?
示例 - 用户将电子邮件添加到他的个人资料。
这是正确的吗?
演示层 - 验证电子邮件格式是否有效(客户端)
逻辑层
数据:
逻辑:
笔记 :
数据层的任务是连接数据库并执行 CRUD 操作,如果您想应用额外的验证逻辑,而不是必须在逻辑层中执行
您的架构更改
展示层 -
逻辑层
数据层:
数据存储即数据库
返回
数据分析仪
逻辑层:
每一层都有自己的一套与外界的合同。
您不应该做或不做某事,假设它可能已经在较早的层完成(如验证)
但是 DataLayer 不验证电子邮件地址格式。它不是其职责的一部分。它甚至不应该了解电子邮件的外观,除非它是某个特定长度的字符串。