【发布时间】:2014-12-13 15:24:31
【问题描述】:
如果我想处理来自例如网络请求的许多参数并在类(层)之间传递它 - 首选方式是什么?
- 我知道通过构造函数作为映射传递可选数量的参数很容易。
- 我也可以直接传递一个映射,如果键与接收对象的属性名称匹配,它应该以类似的方式工作
- 或者我可以只传递映射,然后从中实例化例如域类
- 我可以使用一个特殊类作为具有给定属性数量的数据载体
我有一个需要来自用户界面的数据的域类(不是数据库域,而是业务域)。 通过图层传递数据的最佳方式是什么?如果使用带有键值的数据结构(如地图),我如何知道所有必需的数据都在传递?如果我有一个具有给定数量参数的更静态的构造函数,那么我就会知道参数正在被传递。但是,当使用更动态的方法时,我如何确保这一点?有单元测试吗?
【问题讨论】:
-
您使用的是 Grails、其他一些 Groovy 库/产品/框架,还是这是一个通用问题?
-
我经常将 Groovy 与 Grails 一起使用,是的。但这也是一个笼统的问题。在 Java 中,我可以使用需要某些参数的“静态”构造函数。或者我可以使用构建器。但是在 Groovy 中,最好的代码风格是什么?如果我想在类和层之间传输数据,我应该为我的类 - 可以使用属性动态实例化 - 假设所有必需的属性都已设置并通过调用类的单元测试验证这一点,还是有一些最佳实践?
-
我正在尝试某种域驱动设计,将域逻辑与表示和持久性分离,并希望从 Web 请求(或其他请求)中获取数据并将其“传输”到我的用例和域对象。
标签: methods groovy parameters domain-driven-design