kepawni / twilted
一个严格类型化的PHP 7 CQRS/ES库/框架,适用于PhpSpec,并追求最高的IDE智能感知舒适度
v2.0.1
2020-09-24 12:39 UTC
Requires
- beberlei/assert: ^3.2
- mathiasverraes/classfunctions: ^1.1
- ramsey/uuid: ^4.1
Requires (Dev)
- ext-xdebug: *
- phpspec/phpspec: ^6.1
README
CQRS和事件源——我喜欢的方式来构建领域
状态
概念
序列化实例
一方面,我们不是依赖于PHP内置的序列化格式,另一方面,我们也不是强制使用某种格式,如JSON(即使这是一个明智的选择),我们决定使用自己的方式简化实例以存储,这种方式不会过多地打扰你,但也不会造成很多额外的工作。
不可变性
消除副作用很重要,这也意味着告别设置器。为了配置复杂的实例,我们使用with…($value)方法,这些方法可以链式调用并始终返回一个新的实例。
项目结构
\Kepawni\Twilted的核心命名空间只包含基本接口和一个抽象类。
然而,一些基本便利类可以作为即插即用的解决方案,可以在\Kepawni\Twilted\Basic中找到。这些类严重依赖于特质来提供易于重用,同时造成最少的编码。