基于C#的CQRS教程发布

Jonathan Worthington 和Carl Mäsak编写并开源了一款新的CQRS(命令查询职责分离模式)初学者教程,它旨在帮助开发者在.NET平台上实现CQRS。

这两位开发者指出这不是一个框架,而是做为对学习CQRS感兴趣的开发者的“一堆C#代码” ,如果有可能用户可以修改代码满足自己的需求,并将它作为自己基于CQRS的系统的基础。

该教程中的代码是一个基于咖啡馆领域模型,其主要概念集中在一个tab页中,通过它可以跟踪进入咖啡馆的个人或团体。教程本身划分为五个不同步骤,依次为设计、领域逻辑、读模型,接下来是整合到ASP.NET MVC应用中的模型。

在该教程中,Jonathan和Carl也带出一些值得思考的地方,比如假如用户要扩展例子到生产环境中,需要考虑事务和最终的一致性。

Jonathan和Carl强调,除非用户正处在学习阶段,否则不应该一开始就学习CQRS,因为它是新兴事物,如果用户的架构目标如下所述则应该考虑学习:

我想以命令/事件的方式去实现我的领域模型逻辑,因为用这种方式去建模和编写测试将帮助我交付满足客户需要的系统。我想坚持使用事件存储但它不能满足查询需求。因此,我也需要使用关系数据库。这意味着读和写需要通过不同的代码路径去实现,这种情况下将可以适合使用CQRS。

CQRS是一种日益受到关注的架构模式。由Eric Evans及其他人维护的DDD社区网站,特别指出了其重要性:

CQRS和事件溯源(Event Sourcing)是两种实现DDD的紧密的架构方法,他们在过去几年一直是 DDD中的热点话题。

查看英文原文:New C# based CQRS Tutorial available

感谢水羽哲对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

你可能感兴趣的:(基于C#的CQRS教程发布)