node.js - 我将如何在值对象中制作单独的重复逻辑
问题描述
我正在学习 DDD(领域驱动设计)并阅读 Clean Architecture。我发现了值对象,并且一直在阅读有关它们的更多信息,并在我的应用程序中实现了一些,可以在https://gist.github.com/Tyler0722/73ec826be814b8e54b9f6ae6ae836409找到。
通过调用执行验证并遵循关注点分离原则的工厂方法来创建值对象。问题是我有两个验证逻辑重复的值对象。Username 和 QuizTitle 唯一的区别是MAX_LENGTH
违反了 DRY 原则。我想知道是否有人知道我可以使这个干燥。
解决方案
我的建议是不要这样做。在这种情况下,它只是没有必要。
但是,如果您仍然想这样做,则可以使用静态函数构建一个 Validation 类。在我的工作中,我们使用Webmozart/Assert,如果你看一下它的实现,你就会明白我的意思。在我看来有很方便的。您也可以将 theMAX_LENGHT
作为参数传递。
推荐阅读
- redis - 持久化数据迁移(RDB,AOF)
- c# - 为运动检测设置指定区域
- javascript - 无法禁用 X-Powered-By: Express
- java - 为什么 != 在 if 语句的开头与结尾不同?
- python - 如何在没有程序阻塞的情况下使用图形工具显示图形?
- javascript - 从另一个文件调用 javascript 函数
- python - 如何使用 Tkinter 中的按钮来停止运行不同的代码行?
- javascript - Node js:在module.exports中调用内部函数
- c# - 使用 epplus 导出时动态合并行
- hadoop - Hive 3.1.1安装问题:找不到hadoop安装:$HADOOP_HOME or $HADOOP_PREFIX must be set or hadoop must be in the path