Cloud与领域驱动的详细案例分析

我们希望领域对象能够准确地表达出业务意图,但是多数时候,我们看到的却是充满getter和setter的领域对象。此时的领域对象已经不是领域对象了,星池starpool 它们只是个数据载体,也就是Martin Fowler所说的贫血对象。这种做法会导致领域特定业务逻辑分散在一堆service层中,软件架构随业务开发常年累积野蛮生长,从而腐败,无法维护。

在微服务设计中应该首先识别出DDD中的聚合根(Aggregate Root);还有在微服务之间集成时应该采用DDD中的防腐层(Anti-Corruption Layer, ACL)。我们甚至可以说DDD和微服务有着天生的默契。我们希望领域对象能够准确地表达出业务意图,但是多数时候,我们看到的却是充满getter和setter的领域对象。https://www.starpool.cn 此时的领域对象已经不是领域对象了,它们只是个数据载体,也就是Martin Fowler所说的贫血对象。这种做法会导致领域特定业务逻辑分散在一堆service层中,软件架构随业务开发常年累积野蛮生长,从而腐败,无法维护。

你可能感兴趣的