gpt4 book ai didi

design-patterns - CRUD 有哪些好的设计模式?

转载 作者:行者123 更新时间:2023-12-03 07:17:17 25 4
gpt4 key购买 nike

我正在处理许多可以创建、读取、更新和删除的数据实体,并且我发现自己为它们编写了或多或少相同的代码。例如,我有时需要将数据输出为 JSON,有时需要以表格格式输出。我发现自己编写了两种不同类型的 View 来导出数据。此外,数据库中这些实体的创建通常仅在 SQL 语句和输入参数方面有所不同。

我正在考虑创建一个策略模式来代表不同的“上下文”。例如,AJAX 上下文的 read() 方法将以 JSON 形式返回数据。不过,我想知道其他人是否事先处理过这个问题,并且想知道 CRUD 操作通常使用哪些设计模式。

编辑:需要注意的是,有时复合实体被用来组成一个完整的实体;例如,一个位置可以有多个描述,每个描述对应一种受支持的语言。

最佳答案

CRUD 没有单一的模式,有许多重叠/竞争的模式。这些 CRUD 模式的最佳来源之一是:

Martin Fowler's Patterns of Enterprise Application Architecture

一般来说,解决这个特定问题的最佳方法是使用 ORM(假设有一个关系数据存储,在这种情况下这似乎是一个安全的假设):

http://en.wikipedia.org/wiki/Object-relational_mapping

就通过 View 公开对象而言,也有一些框架可以帮助实现这一点,但这些框架特定于您未指定的编码环境。

关于design-patterns - CRUD 有哪些好的设计模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2570556/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com