你写createSomething()
还是addSomething()
?
你写readSomething()
,getSomething()
还是fetchSomething()
?
这完全是一个小小的抱怨。在会议室中,我们将其称为 CRUD,但在实际代码中,它正在变成 AGUD。
您偏好的命名约定是什么?有关系吗?
谢谢。
你写createSomething()
还是addSomething()
?
你写readSomething()
,getSomething()
还是fetchSomething()
?
这完全是一个小小的抱怨。在会议室中,我们将其称为 CRUD,但在实际代码中,它正在变成 AGUD。
您偏好的命名约定是什么?有关系吗?
谢谢。
我更喜欢CRUD而不是AGUD和AFUD。
创建与添加
我们试图用这两个词来表示我们正在构建新的东西。 CREATE没有解释的余地;以前不存在的东西现在正在建造中。 ADD可能有点令人困惑,因为它可能暗示我们正在添加一些已经存在的东西。
阅读与。获取/获取
对我来说,这里GET和FETCH的问题可以解释为获取对象的唯一实例以对其进行修改。我喜欢使用READ,因为从某种意义上说,我想在一个对象的实例中读取是很清楚的,并且修改修改对象需要单独的操作。
BREAD - 浏览、阅读、编辑、添加、删除。
我认为这取决于问题/技术的背景 - CREATE 和 ADD 可能不同。
例如我可以创建一个标签。
然后我可以将该标签添加到页面。
我们使用存储库来管理我们的数据访问,根据 Eric Evans 在他的领域驱动设计书中的说法,您应该将对象添加和删除到存储库中,就好像它是一个内存中的集合一样——即使在幕后它使用的是数据库。
但在回答最初的问题时,我仍然在谈论 CRUD,因为我的内心深处是一个 SQL 粉丝!:)
CRUD 作为首字母缩写词效果更好。在实践中,我一般使用 IACREUD:
我真的想不出一个好的缩写词。。
我更喜欢readXXXX()
,getXXXX()
因为getXXX()
可能会引用的getter / setter
方法bean
,并且可能会在维护代码时造成混乱
我认为这是相当普遍的。我们的 DAO 肯定是 Add、Get、Update、Delete(将状态设置为 'C'ancelled 等)方法名称。在数据库级别,它们是插入、选择、更新和删除 - ISUD。
它可以是持久化、获取、删除。根据需要坚持添加或更新。
你是写 createSomething() 还是 addSomething()?
当某些东西不存在时,我使用 createThing(),如果某些东西确实存在,我使用 addThing() ,我们将向它添加不同的东西。
你会写 readSomething()、getSomething() 还是 fetchSomething()?
如果我正在读取字节(或类似内容),我会使用 readThing(),如果我正在访问属性,我会使用 getThing(),如果我正在访问外部源,我会使用 fetchThing()。
取决于上下文和偏好。LSS,创建东西肯定不同于添加东西。就个人而言,我觉得它们不可互换。
我创建一些东西,然后将它添加到其他东西中。添加可以是创建的一部分,有时也可以是包含对象的更新。
通常,“获取”是高级别的——从任何地方获取它:缓存、磁盘、配置。“检索”从持久存储中获取值——如果它不在缓存中,通常由“获取”调用。
这取决于公司的偏好和标准。这通常不取决于我,这对我来说没问题。一个好的程序员是灵活的。
当我能想到合适的动词时(凌晨 4 点很难),我会尝试使用更具体的动词。对于大多数事情来说,add/edit/delete/get 已经足够好了,也足够短了。
归根结底,这取决于您作为一个人,这是您对项目感到满意的地方。我通常使用获取、添加、搜索或类似的东西。问候马克