如何在C或任何其他过程语言中使用CQRS



维基百科引文:"CQS非常适合面向对象方法论,但也可以在面向对象编程之外应用。副作用和返回值的分离没有本质上的面向对象,因此CQS可以有益地应用于任何需要对副作用进行推理的编程范式"。

我需要一个使用CQRS模式在非OOP语言中创建模块化程序的简单例子。

维基百科上的那篇文章有一些代码块,但没有解释它们之间的交互。

CQS与程序是否模块化无关。它只指定修改值的函数不应该返回值,或者如果返回值,则不应该修改它

例如

int x;
int increment()
{
x = x + 1;
return x;
}

其递增一个整数并返回指向它的指针将破坏CQS。相反,这应该是两个功能,

int x;
void increment() { x = x + 1; }
int value() { return x; }

相关内容

  • 没有找到相关文章

最新更新