Discuz! Board

 找回密碼
 立即註冊
搜索
熱搜: 活動 交友 discuz
查看: 5|回復: 0

订单添加到数据

[複製鏈接]

1

主題

1

帖子

5

積分

新手上路

Rank: 1

積分
5
發表於 2023-12-20 17:25:19 | 顯示全部樓層 |閱讀模式
因此,根据 原理,我们将低级模块封装在抽象中,这两个模块都应该依赖于它。 的第二个原则是这种抽象不应该依赖于细节,即不应该依赖于实现细节。 通过应用这两个规则,我们的代码在基础设施等层中变得非常灵活,因为我们可以自由地交换抽象的实现,而不会对我们的高层代码产生太大影响。 使用示例 作为使用 的示例,我们采用一个简化模型,即用户向在线商店添加订单,然后发送有关其创建的通知。

首先,让我们定义模型的类。 用户模型如下所示,包含用户的基本信息,例如姓名、电子邮件和电话号码: 然后实现订单模型 为了简单起见,我们的订单只有订单号、订单价值和订单所属的用户字段。这三个字段足以提供示例。 下一步是实现一个服务,负责将我们的 C级联系人列表 库中,在我们的示例中,它将是一个 数据库。最初,此类服务的实现可能如下所示: 这样的服务可以正常工作,但它有一个基本问题:如果我们假设 是我们的高级域服务,那么在此实现中,它直接依赖于将记录保存在数据库中的低级实现。



根据 假设,高级服务不应直接依赖于写入数据库的低级实现。如何解决这个问题呢?我们需要将数据库条目与抽象分离,以便领域服务依赖于它而不是特定的实现。因此,让我们首先实现负责将订单添加到数据模型的抽象: 然后,让我们创建此抽象的实现,其中将包含特定的实现解决方案,即在我们的示例中,插入到数据库中。 最后,让我们将接口注入到 中: 现在 不知道它使用的 的实现是什么以及写入数据存储的方法是什么,因为它只直接依赖于抽象。


回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

Archiver|手機版|自動贊助|GameHost抗攻擊論壇

GMT+8, 2024-12-24 01:32 , Processed in 0.328365 second(s), 18 queries .

抗攻擊 by GameHost X3.4

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表
一粒米 | 中興米 | 論壇美工 | 設計 抗ddos | 天堂私服 | ddos | ddos | 防ddos | 防禦ddos | 防ddos主機 | 天堂美工 | 設計 防ddos主機 | 抗ddos主機 | 抗ddos | 抗ddos主機 | 抗攻擊論壇 | 天堂自動贊助 | 免費論壇 | 天堂私服 | 天堂123 | 台南清潔 | 天堂 | 天堂私服 | 免費論壇申請 | 抗ddos | 虛擬主機 | 實體主機 | vps | 網域註冊 | 抗攻擊遊戲主機 | ddos |