在事件来源中命名事件类型的最佳实践

史蒂文

构建事件存储库时,典型的方法是序列化事件,然后保留事件的类型,事件的主体(序列化的事件本身),标识符以及事件发生的时间。

对于事件类型,是否有关于如何存储和引用这些事件的最佳实践?我看到的示例存储类的完全限定路径,即。

com.company.project.package.XXXXEvent

但是,如果您决定重构项目结构,那又需要做些什么呢?

阿列克谢·齐马列夫(Alexey Zimarev)

在生产中运行基于事件的应用程序数年后,我们避免为事件类型使用完全限定的类名或任何其他平台特定的标识符。

事件类型只是一个字符串,应允许任何类型的读者理解该事件应如何反序列化。对于重构可能导致类名更改的应用程序结构,您也绝对正确。

因此,我们使用预先配置的映射,该映射允许将对象类型解析为字符串并将字符串反转为事件类型。这样,我们就可以将事件类型的元数据与实际的类分离,并获得使用不同语言和堆栈来读取和写入事件的自由,并且还能够根据需要自由移动类。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

C#最佳实践混乱中的异步事件

来自分类Dev

C#最佳实践混乱中的异步事件

来自分类Dev

事件来源中的流版本

来自分类常见问题

Kotlin onClick事件和架构最佳实践

来自分类Dev

事件来源与原始来源

来自分类Dev

全局命名空间中事件的最佳做法?

来自分类Dev

MVC布局中的CSS命名最佳实践

来自分类Dev

什么是在angularjs中触发事件使用$ broadcast / $ on的最佳实践/替代方法?

来自分类Dev

事件来源:触发事件的捷径

来自分类Dev

命名线程的最佳实践

来自分类Dev

在何处添加事件侦听器的最佳实践

来自分类Dev

最佳实践的确认:删除事件侦听器

来自分类Dev

jQuery编码标准和最佳实践(分隔事件和函数)

来自分类Dev

Web应用程序的事件侦听器最佳实践

来自分类Dev

将参数传递给事件处理程序函数的最佳实践

来自分类Dev

最佳实践的确认:删除事件侦听器

来自分类Dev

使用 Vanilla JS 选择事件目标的最佳实践

来自分类Dev

类中的变量类型:最佳编程实践

来自分类Dev

Haskell中的强类型事件

来自分类Dev

在PowerShell中显示事件类型

来自分类Dev

事件来源和事件/汇总版本

来自分类Dev

如何在Swift中获取事件的来源(发送者)

来自分类Dev

jQuery中的命名空间原始JavaScript事件

来自分类Dev

MvvmCross:在ViewModel中引发事件的最佳方法?

来自分类Dev

Ruby on Rails中针对多种类型的用户的最佳实践

来自分类Dev

AWS Cognito中针对多种用户类型的最佳实践?

来自分类Dev

在 Kotlin 中实例化函数类型的最佳实践

来自分类Dev

从表中获取每个事件类型的最新事件

来自分类Dev

在某些事件全部触发后做某事的最佳实践是什么

Related 相关文章

热门标签

归档