Jas*_*son 94 methods naming-conventions
警告:这是我发布的一个不太严肃的问题/讨论......但我愿意打赌,大多数开发人员都在考虑这个"问题"......
一直想得到关于从某个地方获取数据并返回它的方法的命名约定的其他意见......
大多数方法名称都有点简单明了...... SaveEmployee(),DeleteOrder(),UploadDocument().当然,对于类,你最有可能使用短格式...分别保存(),删除(),上传().
但是,我一直在努力采取初步行动......如何获取数据.似乎对于每个项目,我最终都会在不同的命名约定之间跳跃,因为我对我使用的最后一个项目感到非常满意.据我所知,这些是可能性 - >
你有什么想法?
小智 118
在您的问题标题中,您使用获取数据.这是非常普遍的,你需要定义什么感觉越来越手段语义显著明确的方式.我提供以下示例,希望在考虑命名事项时让您走上正确的轨道.
getBooks() 当你获得与一个对象相关的所有书籍时,它意味着已经定义了该集合的标准以及它们来自哪里是一个隐藏的细节.findBooks(criteria)
是什么时候试图根据方法调用的参数找到书籍的子集,这通常会被不同的搜索条件重载 loadBooks(source) 是从外部源加载,如文件或数据库.示例: fetch意味着某些实体需要去获取远程的东西并将其恢复.狗取得一根棍子,并且检索是fetch的同义词,其中添加的语义也可能是你之前拥有的东西.得到是的代名词获得,以及这意味着你有什么独有并没有其他人可以同时获得它.
语言学和逻辑学的分支与意义有关
这些注释证明了像get和fetch这样的通用术语没有特定的语义,并且由不同的人进行不同的解释.为术语选择语义,记录语义不清晰并与其使用一致意味着什么.
具有模糊或含糊不清的含义的词语由于他们的偏见和偏见基于他们的个人观点而被不同的人赋予不同的语义,并且永远不会结束.
Nic*_*sen 12
老实说,您应该与您的团队决定使用哪种命名约定.但为了好玩,让我们看看你的思路是什么来决定这些:
这个方法属于一个数据源,我们不关心它是如何获取它们的,我们只想从数据源中获取它们.
您将数据源视为猎犬,获取您的图书是他的工作.我想你应该自己决定一下他能装到嘴里的人数.
您的数据源是图书管理员,将使用Dewey Decimal系统查找您的图书.
这些书属于某种"电子书包",必须装入其中.务必在加载后调用ZipClosed()以防止丢失它们.
我一无所有.
答案就是坚持你所熟悉的并且是一致的.
如果你有一个barnes和贵族网站并且你使用GetBooks(),那么如果你有另一个像Movie实体的项目使用GetMovies().无论你和你的团队喜欢什么,都是一致的.