DDD项目设计模式

DDD设计模式【Domain Driven Design】:

  • 项目细节:

    • OOP【面向对象】

    • Design Pattern【设计方法】

    • SOLID【编程思路】

  • 多个模块的设计:

    • Domain Driven Design【模块之间的拆分,聚合】

    • 项目的三层架构:

      • Presentation【与前端交互】:Controller,eg...

      • Application【业务逻辑】:Service + CRUD;

      • Infrastructure:DB,Lib;

        缺点:

        • Application:业务逻辑复杂化,
        • 对infra过度依赖;
        • 比较难以使用最新技术框架;
      • DDD:

        • Application:面向不同的业务场景;

        • Domain:面向业务逻辑不变的

        • Infra:是DB,共有轮子,降低依赖【增加一层隔离层】;

        • 层与层之间的接口;

          • Presentation和Application之间的接口【Rest DTO [Data transfer object]】:不容易修改,相当于api;
          • Application 和Domain之间的接口:entity;
          • Domain和Infra之间的接口:DataBase TDO,不宜修改;
        • entity:带有苏里的id,有自己的生命状态;

        • valueObject:仅有属性,比如地址信息;

        • aggregate:具有管理权限的entity,通过aggregate达到相互entity的访问,保证内部entity的数据一致性,eg: 微服务;

posted @ 2025-04-08 10:58  烟雨断桥  阅读(23)  评论(0)    收藏  举报