• 领域驱动设计常见术语


    DDD : Domain Driven Design 

    CQRS :Command Query Responsibility Seperation(命令查询职责分离)的缩写

                     把查询数据 同程为 Query (查询), 只提供根据聚合的ID 进行查询,查询结果 以DTO 形式返回

                     改变状态叫做 Command (命令)   , 提供Create,Update ,Delete 操作。

    CRUD : (Create, Read, Update, Delete) 增查改删

    ES  :Event Sourcing 缩写,事件溯源

             记录聚合产生的每一个事件,可以根据这些事件来追溯源头。

             例如:一个用户的聚合根,对用户的添加事件,修改名称事件,修改密码事件等,依次保存为3条记录,那么通过这3条记录,就可以查看“用户聚合”每次事件前后的状态变化。

             事件溯源都是以新增的方式保存数据,而通常的通过CUD方式保存的数据,其实是保存的数据最终状态,而在这个最终状态之前究竟发生了什么,其实并不知道。

             事件溯源 ,可以参考 SVN 等代码版本管理工具,通过每次的提交记录,可以查看代码从最终状态到初始状态的变化情况。

    DTO   : (Data Transfer Object)  

                  当我们查询数据时,可能在UI 上显示的,只是领域对象的 少部分 属性字段(或数据),  DTO 对象是领域 对象的投射

    Domain Objects :(领域对象)

    Saga : 长时处理过程 (Long-Running Process)

              自我理解:一个任务设计有多个处理步骤,完成所有步骤可能耗时很长。

  • 相关阅读:
    [紫书] 八数码问题(BFS)
    [紫书] 移动盒子(Boxes in a Line)
    [洛谷] P1803 凌乱的yyy / 线段覆盖 (贪心)
    [紫书] 破损的键盘(Broken Keyboard)
    bzoj3891
    poj3233
    bzoj1941
    Vijos2034
    poj2985
    Vijos1100
  • 原文地址:https://www.cnblogs.com/iampkm/p/4625670.html
Copyright © 2020-2023  润新知