You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何遵循领域驱动设计的最佳实践

1.识别领域模型中的实体、值对象、聚合根、领域服务等概念 示例代码:

//定义实体 public class Order { private Long id; private List<OrderItem> items; private Customer customer; //省略getter/setter } //定义值对象 public class Money { private BigDecimal amount; private Currency currency; //省略getter/setter } //定义聚合根 public class Customer { private Long id; private String name; private Address address; //省略getter/setter } //定义领域服务 public class OrderService { //省略方法 }

2.使用Ubiquitous Language确保沟通畅通,避免语言模糊

示例代码:

public class OrderService { //创建订单 public Order createOrder(Customer customer, List<OrderItem> items) { Order order = new Order(); order.setCustomer(customer); order.setItems(items); //生成订单编号等操作 //省略代码 return order; }

//提交订单 public void submitOrder(Order order) { //订单状态变更为已提交等操作 //省略代码 } }

3.使用领域事件实现解耦

示例代码:

//定义领域事件 public class OrderSubmittedEvent { private Long id; private Date submittedTime; //省略getter/setter }

public class OrderService { //定义领域事件发布者 @Autowired private DomainEventPublisher domainEventPublisher;

//提交订单 public void submitOrder(Order order) { //订单状态变更为已提交等操作 //省略代码

    //触发领域事件
    domainEventPublisher.publish(new OrderSubmittedEvent(order.getId(), new Date()));

} }

4.使用领域驱动模型

示例代码:

//定义领域服务 @Service

本文内容通过AI工具匹配关键字智能整合而成,仅供参考,火山引擎不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系service@volcengine.com进行反馈,火山引擎收到您的反馈后将及时答复和处理。
展开更多
面向开发者的云福利中心,ECS 60元/年,域名1元起,助力开发者快速在云上构建可靠应用

社区干货

【云原生 | 最佳实践】一个实践驱动的云原生项目集—KubeWharf | 社区征文

内部部署的容器单集群已经达到了上万个节点。时至今日,字节跳动实现云原生化的应用比例已超过 95%,我们计划和开源社区合作,逐步开放规模化云原生落地的工具和最佳实践。”字节跳动宣布正式开源 KubeWharf 项目。... Katalyst 的一些设计我觉得在实现企业内部的资源管理框架的时候有很大的参考价值,包括在混部场景下基于自定义 QoS 级别对资源管理的扩展与相应的调度器的扩展等。 对于用户而言,我认为还是要根据自身的工作负载来决...

一种新型的系统设计解决方案:模块树驱动设计

**系统各主要相关方缺乏对系统设计的信息拉齐,给系统复杂度的提升同样有重要的贡献。**那么如何让各角色更好的进行信息对齐,这就引入了 **MTDD** 。# 三、一种新型的系统设计解决方案:MTDD前面提到了《软件设计哲学》作者提出了一些系统设计总结,也有些人提出了一些方法论,比如领域驱动设计(DDD),测试驱动开发(TDD),行为驱动开发(BDD);但是这些模式,都是从设计方法论上给与指导,战术上指导偏少。下面我们来介绍我自己沉淀...

火山引擎DataLeap数据质量解决方案和最佳实践(三):最佳实践

> 更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群## **最佳实践**前面介绍了DataLeap数据质量平台的一些实现方式,下面为大家介绍一些我们在数据量和资源这两个方面的最佳实践。**表行数信息-优先** **HMS** **获取**内部的离线监控中,表行数的监控占比非常大,可能至少 50% 以上的离线规则都是表行数的监控。对于表行数,之前我们是通过 Spark,Select Count* 提交作业,对资源的消耗非...

活动回顾|火山引擎DataLeap分享:DataOps、数据治理、指标体系最佳实践(文中领取PPT)

数据智能创新与实践大会(北京站)**上,来自火山引擎 DataLeap 的三位专家分别就 **DataOps、数据治理和指标体系**等方向进行了精彩的分享。 本次分享内容皆来自于**字节跳动业务实战经验**,希望可以帮助企业更高效地管理和处理大量的数据,提高数据资产的价值和利用率,助力企业抓稳数字化机遇,建立数据驱动的决策机制。 以下为嘉宾演讲PPT部分精彩内容,**关注字节跳动数据平台微信公众号回复【0721】,**...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

如何遵循领域驱动设计的最佳实践 -优选内容

【云原生 | 最佳实践】一个实践驱动的云原生项目集—KubeWharf | 社区征文
内部部署的容器单集群已经达到了上万个节点。时至今日,字节跳动实现云原生化的应用比例已超过 95%,我们计划和开源社区合作,逐步开放规模化云原生落地的工具和最佳实践。”字节跳动宣布正式开源 KubeWharf 项目。... Katalyst 的一些设计我觉得在实现企业内部的资源管理框架的时候有很大的参考价值,包括在混部场景下基于自定义 QoS 级别对资源管理的扩展与相应的调度器的扩展等。 对于用户而言,我认为还是要根据自身的工作负载来决...
一种新型的系统设计解决方案:模块树驱动设计
**系统各主要相关方缺乏对系统设计的信息拉齐,给系统复杂度的提升同样有重要的贡献。**那么如何让各角色更好的进行信息对齐,这就引入了 **MTDD** 。# 三、一种新型的系统设计解决方案:MTDD前面提到了《软件设计哲学》作者提出了一些系统设计总结,也有些人提出了一些方法论,比如领域驱动设计(DDD),测试驱动开发(TDD),行为驱动开发(BDD);但是这些模式,都是从设计方法论上给与指导,战术上指导偏少。下面我们来介绍我自己沉淀...
最佳实践
一个比较好的实践是,如果您流程中有一份比较大的数据产出,下游需要使用,可以将这些数据放置到 HDFS 组件(Hadoop 类型默认必选,Presto/Trino 类型集群可选安装)中,或者是 TOS,然后通过XCom将该文件的路径信息传给下游使用。 在与其他组件交互的过程中可能涉及到一些认证信息,这些信息不应该编码在 DAG 当中,最好将其配置在 Airflow Connections 中,Airflow 会承诺连接信息的安全可靠,然后在 DAG 中通过 Connection Id 来引用它们。...
火山引擎DataLeap数据质量解决方案和最佳实践(三):最佳实践
> 更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群## **最佳实践**前面介绍了DataLeap数据质量平台的一些实现方式,下面为大家介绍一些我们在数据量和资源这两个方面的最佳实践。**表行数信息-优先** **HMS** **获取**内部的离线监控中,表行数的监控占比非常大,可能至少 50% 以上的离线规则都是表行数的监控。对于表行数,之前我们是通过 Spark,Select Count* 提交作业,对资源的消耗非...

如何遵循领域驱动设计的最佳实践 -相关内容

从应用看火山引擎 AB 测试 (DataTester) 的最佳实践

> 更多技术交流、求职机会,欢迎关注**字节跳动数据平台微信公众号,回复【1】进入官方交流群** 本文将从外部用户的角度介绍 A/B 测试平台的最佳实践。分享分为四部分,首先整体介绍 A/B 测试的应用场景,接下来结... A/B 实验在临床医学和生物制药领域已经有几百年的应用历史,随着互联网的发展和各行业数字化的普及,更多业务搬到了线上,也具备了实验驱动的基础。 A/B 测试是快速迭代和做业务决策的一个基础功能,在功能上线前...

一文读懂火山引擎云数据库产品及选型

针对实际业务场景设计最优的解决方案,用专业技术助力组织和企业实现业务成功。## 为什么要做数据库选型### 数据库选型的重要性与难点发展数字经济是当下各行各业的重要方向。支撑数字经济的底座是软件,特别是基础软件,可以说基础软件是整个数字经济的坚实底座。在基础软件领域,有三大基础软件,分别是操作系统、数据库系统和中间件。我们每天日常生活中的方方面面,背后都离不开这些基础软件的支撑,其中数据库系统是业务数据的...

对话火山引擎侯爽:字节原生的边缘云

提供更好的技术架构与实践案例。火山引擎边缘云的快速发展得益于字节跳动集中而海量的业务需求,但在新场景、新行业仍需突破。例如边缘云正在向汽车、金融、工业、能源等更多行业渗透,相对于泛互联网业务而言,既“小”又复杂。“在泛互联网行业,音视频就是刚需,对基础设施降本和应用体验优化的需求都会带来大量的边缘应用。但在其他新兴行业尚处在早期,虽然我们在辅助驾驶、工业互联网领域有了一些落地场景,但还需要慢慢摸索。...

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

开放的AI基建,让AI普惠更进一步

自动驾驶等多个领域都取得成果;双方还针对初创企业打造 “火山引擎 × NVIDIA 初创加速计划”,赋能更多合作伙伴。 本文内容根据三位嘉宾演讲实录整理。 火山引擎项亮:开放AI基建,让AI触手可得大家好,欢迎大家来参加... 内部实践发现,公司内部利用率最低的卡就是用来做开发机的卡,常年利用率非常低。因为开发机卡和大的调度卡不是同一个池子,利用率很难提升。 算法工程师肯定对复现别人的代码,或者把自己做的很好的项目让别人复现也是...

干货|关于 A/B 实验的思考与字节跳动的最佳实践

火山引擎 A/B 测试系统架构及字节跳动内部 A/B 测试的最佳实践。[上周,我们也整理了关于 A/B测试的认知误区的观点分享可以点击了解。](http://mp.weixin.qq.com/s?__biz=MzkwMzMwOTQwMg==&mid=2247487459&idx=1&sn... A/B 测试就是最好的因果推断工具。* **复利效应**:A/B 测试是可以持续不断进行的实验,即使一次实验提升的效果不大,但是长期下来复利效应的积累会产生很大的变化和回报。A/B TestA/B 测试系统实现...

亿级用户背后的字节跳动云原生计算最佳实践

互联网时代数据出现爆发式增长,数字化、实时化的趋势也明显加快。基于数据驱动的业务场景不断涌现,无一不在加速着大数据的繁荣发展。而随着云原生概念的兴起,大数据技术产品逐步迭代升级,云原生大数据技术产品开... **业内最大规模实时计算集群最佳实践**在字节跳动内部,**抖音/头条/穿山甲等业务的广告推荐****以及模型训练**都深度使用了流式计算 Flink 版提供的流式计算引擎能力。 在流式训练方面,流式...

亿级用户背后的字节跳动云原生计算最佳实践

互联网时代数据出现爆发式增长,数字化、实时化的趋势也明显加快。基于数据驱动的业务场景不断涌现,无一不在加速着大数据的繁荣发展。而随着云原生概念的兴起,大数据技术产品逐步迭代升级,云原生大数据技术产品开始... 4. **实时推荐场景**。具备实时样本拼接能力,通过实时模型训练,创建实时增量模型,为客户提供更加精准和实时的推荐能力。### **业内最大规模实时计算集群最佳实践**在字节跳动内部,**抖音** **/头条/** **穿山...

火山引擎流批数据质量解决方案和最佳实践

整个平台的设计是以任务提交的方式完成离线场景的需求。但是后来我们发现其实不需要启动 Spark 的作业仍然会启动一个 Spark 作业,如 ES SQL 查询,这个查询是很重的。* **依赖 Yarn 做调度稳定性不高**:平台上的... 最佳实践 前面介绍了数据质量平台的一些实现方式,下面为大家介绍一些我们在数据量和资源这两个方面的最佳实践。**表行数信息-优先 HMS 获取**内部的离线监控中,表行数的监控占比非常...

LAS Spark+云原生:数据分析全新解决方案

CatalogService:湖仓一体元数据架构实践- LAS Batch Scheduler:云原生批处理调度器- UIService:云原生 Spark History Server- Falcon:Remote Shuffle Service- 总结1. # Spark on K8S作为当今... 逐渐成为容器编排领域的事实标准。Kubernetes 的架构是高度可扩展化的,它由一组核心组件和插件组成。开发者可以通过插件机制扩展和增强 Kubernetes 的功能。Kubernetes 被广泛应用于云原生应用程序的部署和管理。...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

产品体验

体验中心

云服务器特惠

云服务器
云服务器ECS新人特惠
立即抢购

白皮书

一图详解大模型
浓缩大模型架构,厘清生产和应用链路关系
立即获取

最新活动

爆款1核2G共享型服务器

首年60元,每月仅需5元,限量秒杀
立即抢购

火山引擎增长体验专区

丰富能力激励企业快速增长
查看详情

数据智能VeDI

易用的高性能大数据产品家族
了解详情

一键开启云上增长新空间

立即咨询