- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我想知道我是否应该使用 Symfony EventDispatcher Component用于在我的 DDD 应用程序中处理领域事件。
对我来说,当一个经过良好测试的组件可用时,从头开始重新实现一个事件调度器毫无意义。但另一方面,Symfony 组件使所有事件都从基类 Event 扩展而来。这不会将我的域事件绑定(bind)到 EventDispatcher 组件吗?
此外,如果我确实使用这个组件,我应该在应用程序范围的 event_dispatcher 服务上引发域事件,还是应该将 Symfony 的应用程序事件和我的域事件分开(即创建一个新的 EventDispatcher)?
最佳答案
我想知道为什么没有EventInterface。
这个:https://github.com/symfony/symfony/issues/9539表明因为 Event 是一个值对象,所以不需要接口(interface)。我承认我不太理解这个论点(至少在耦合方面)但没有进一步研究。可能是一个很好的 DDD 问题。
在我的例子中,我创建了一个在 DomainEvent 中实现的 DomainEventInterface,后者又扩展了 Event。我使用 DomainEvent 作为我的基本事件类。如果我什至需要切换调度程序,这应该会使重构相当容易。而且,至少在我看来,避免将域直接耦合到事件组件。
我创建自己的 DomainDispatcher 实例主要是为了避免将我的域绑定(bind)到实际的 Symfony 框架。
另请注意,事件监听器接口(interface)在 S2.4 中已更改。 Event 对象将在 3.0 中得到简化。
关于php - DDD : Should I use the Symfony EventDispatcher for my domain events?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25035615/
从 RN 版本 0.63.2 升级到 0.65.0-rc.3 后无法构建 iOS 应用程序。我收到此错误: In file included from /Users/.../ReactNativePr
有什么方法可以获取EventDispatcher的已注册监听器列表吗? 我知道EventDispatcher具有hasEventListener方法来告诉您是否注册了任何监听器,但是是否有一种简单的方
一个简单的问题..我想知道你们什么时候在你们的类里面扩展了 EventDispatcher。在我看来,只要我们有导入事件包,我们就可以毫无问题地分发事件......我看到有时人们在他们的类(class
我经常从头开始用 JS 实现自己的 EventDispatcher 类。我想在浏览器的某处有一些针对 DOM 元素的实现,但 EventDispatchers 甚至对其他与 DOM 完全无关的东西也很
我遇到了一些奇怪的事情,但也许其他人以前遇到过。 我有一个基类,它不扩展任何东西。让我们称之为... public class FooBar { //... } 但我想绑定(bind)它暴露的
这看起来非常简单,但我对 JavaScript 有点陌生并且很困难。文档给出了这个例子: // Adding events to a custom object var Car = function
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
我用的是cocos2d-x 3.0 RC1,有以下问题。据我所知,cocos2d-x 有一个单一的(集中的)事件分发器,它被实现为一个单例,这样我就可以从任何地方向任何地方发送事件。现在在最终版本中它
我希望在我的应用程序中实现观察者模式(不是 php,这就是为什么不使用 Symfony 的组件)。 我发现很奇怪,尽管组件没有使用类来传播或监听事件,因为这将允许使用继承来监听整个事件树。 我看不到使
我正在将一个 ActionScript 应用程序移植到 JavaScript,并且正在尝试完善我的 EventDispatcher 实现。 我最近遇到的一个问题是,我附加的回调没有被正确的 this
我尝试用数据实现一个简单的类型安全事件调度程序,即除了事件之外还可以传递任何数据。我发现了很多类型安全的事件调度程序问题或任何其他示例,但似乎没有人能解决我的问题。这是我到目前为止得到的: publi
我想通过使某些类可观察来促进我的 PHP 代码中的松散耦合。 Symfony EventDispatcher component看起来很有希望,SPL 也是如此 SplObserver/SplSubj
使用react-native run-ios启动应用程序时,它在模拟器上显示错误无法找到EventDispatcher的模块 最佳答案 停止远程 JS 调试,然后重新加载应用 它会给您相应的错误消息,
我有一个 JAVA6 GUI 处理数据导入到我们的数据库。我已经实现了一个工作 JProgressBar。我知道对 GUI 所做的更改必须通过事件分派(dispatch)线程来完成——我认为我没有这样
Bloomberglp.Blpapi.Session 有一个如下所示的构造函数: public Session(SessionOptions, Bloomberglp.Blpapi.EventHand
来自 Symfony2 的 EventDispatcher 组件文档: The Symfony2 EventDispatcher component implements the Mediator p
我想知道我是否应该使用 Symfony EventDispatcher Component用于在我的 DDD 应用程序中处理领域事件。 对我来说,当一个经过良好测试的组件可用时,从头开始重新实现一个事
我想知道在 EntityRepository 类中注入(inject) EventDispatcher 的最佳实践是什么。 最佳答案 首先,使用 global 是一个 very bad practic
通常是not recommended捕获一般异常,例如 Exception 或 Throwable,因为您承担了处理您不知道如何处理的问题(例如内存不足错误)的负担。然而,在“稳健”的观察者模式实现中
当尝试安装 Rackspace 包时(composer require rackspace/php-opencloud),出现以下错误找不到“Symfony\Component\EventDispat
我是一名优秀的程序员,十分优秀!