实习日志TODO


专业术语解释

1. 值对象

阅读文章

2. DDD(领域驱动设计)

阅读文章

  • [领域驱动设计在互联网业务开发中的实践]( 领域驱动设计在互联网业务开发中的实践 - 美团技术团队 (meituan.com) )

    文章摘录:通过DDD的限界上下文划分,我们界定出抽奖、活动准入、风控、计数、库存等五个上下文,每个上下文在系统中都高度内聚。

    限界上下文之间的映射关系

    • 合作关系(Partnership):两个上下文紧密合作的关系,一荣俱荣,一损俱损。
    • 共享内核(Shared Kernel):两个上下文依赖部分共享的模型。
    • 客户方-供应方开发(Customer-Supplier Development):上下文之间有组织的上下游依赖。
    • 遵奉者(Conformist):下游上下文只能盲目依赖上游上下文。
    • 防腐层(Anticorruption Layer):一个上下文通过一些适配和转换与另一个上下文交互。
    • 开放主机服务(Open Host Service):定义一种协议来让其他上下文来对本上下文进行访问。
    • 发布语言(Published Language):通常与OHS一起使用,用于定义开放主机的协议。
    • 大泥球(Big Ball of Mud):混杂在一起的上下文关系,边界不清晰。
    • 另谋他路(SeparateWay):两个完全没有任何联系的上下文。

    实体

    当一个对象由其标识(而不是属性)区分时,这种对象称为实体(Entity)。

    例:最简单的,公安系统的身份信息录入,对于人的模拟,即认为是实体,因为每个人是独一无二的,且其具有唯一标识(如公安系统分发的身份证号码)。

    值对象

    当一个对象用于对事务进行描述而没有唯一标识时,它被称作值对象(Value Object)。

    例:比如颜色信息,我们只需要知道{“name”:“黑色”,”css”:“#000000”}这样的值信息就能够满足要求了,这避免了我们对标识追踪带来的系统复杂性。

    聚合根

    Aggregate(聚合)是一组相关对象的集合,作为一个整体被外界访问,聚合根(Aggregate Root)是这个聚合的根节点。

    聚合由根实体,值对象和实体组成。

    一般的工程中包的组织方式为{com.公司名.组织架构.业务.上下文.*},这样的组织结构能够明确的将一个上下文限定在包的内部。

    如:com.company.team.bussiness.lottery.*;

  • 限界上下文(BC)是什么

    文章摘录:上下文意味着具体的责任。限界上下文意味着责任是通过明确的边界来强制执行的。

  • [最近爆火的DDD到底是什么?]( 最近爆火的DDD到底是什么?一文带你落地DDD - 知乎 (zhihu.com) )


文章作者: Prannt
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Prannt !
评论
  目录