language-agnostic - 是否有类似于 "upsert"的用于选择或插入的编程术语?

标签 language-agnostic terminology

是否有针对可以选择现有项目或创建/插入新项目的小部件/服务的编程术语?也许就像“upsert”是的组合一样向上 约会现有或在 插入 新的?

编辑

抱歉,也许我使用“upsert”作为示例术语会引起混淆。我正在寻找一个描述(选择或创建)而不是(创建或更新)的术语。例如,可以查询现有联系人以分配给公司的小部件,但也允许临时创建联系人。我希望在这些小部件的名称中使用该术语来简洁地描述它们的功能。

最佳答案

在基于表征状态转移 (REST) 的 Web 服务中,PUT方法具有语义,可以表示 create or modify .基于此,我建议把作为一种可能性。

这也恰好与该词的 Java 用法相匹配:考虑 put Hashtable 上的方法。它将键映射到值并返回与键对应的旧值(如果存在)。这意味着它可以存在也可以不存在,并且操作将成功。 Mozilla 对 put 使用相同的语义在 IDBObjectStore在 JavaScript 中访问。

似乎 put 用于更新集合,它通常具有创建或更新的含义。

基于澄清 - 诸如提供、指定、定义或识别之类的东西可能是可接受的选项,用于传达通过提供现有实例和/或在现场创建新实例而创建的集合的内容。也就是说,我可以通过引用一些众所周知的数字(pi、sqrt(2) 等)或通过创建一个新数字(例如,通过列出一些数字或描述它是如何计算的)。

关于language-agnostic - 是否有类似于 "upsert"的用于选择或插入的编程术语?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45738691/

相关文章:

确定一组中的最低付款的算法

unit-testing - 关于测试驱动开发,但反过来

algorithm - Dijkstra 开发了哪些算法?

java - 什么是核心java和高级java

python - 寻找给定向量的 k 最近邻?

c++ - 为什么许多编译语言不包含编译时反射?

naming-conventions - "Enable/Disable"这个词是什么?

haskell - Haskell 中 (>>) 运算符的正确名称是什么?

terminology - 如果有的话,软件 'release' 和 'version' 之间有什么区别?

language-agnostic - 如何实现投票系统?