Questions tagged «naming-conventions»

命名约定是指管理分配给编程结构(例如变量和方法)的名称的通用规则。这些约定通过增强跨不同模块的命名一致性来提高可读性,从而提高代码的可维护性。

4
SQL Server索引命名约定
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心寻求指导。 8年前关闭。 有一些标准方法可以为SQL Server命名索引吗?看来主键索引名为PK_,非聚集索引通常以IX_开头。除了唯一索引,还有其他命名约定吗?

9
数量vs长度vs尺寸
通过使用多种编程语言和库,我注意到用于集合中元素总数的各种术语。 最常见的似乎是length,count和size。 例如。 array.length vector.size() collection.count 有没有首选的用语?它取决于收集的类型吗?即。可变/不变 是否首选将其作为属性而不是方法?

5
MySQL是否有命名约定?
这是我的方法: 表名是小写,下划线的用途来分隔词语,并且是单数(例如foo,foo_bar等 我通常(并非总是)具有自动增量PK。我用下面的约定:tablename_id(例如foo_id,foo_bar_id等)。 当表包含作为外键的列时,我只需从它来自的任何表中复制该键的列名。例如,假设表格foo_bar具有FK foo_id(foo_id的PK foo)。 在定义FK以强制执行参照完整性时,我使用以下内容:(tablename_fk_columnname例如,扩展示例3,它将是foo_bar_foo_id)。由于这是表名/列名的组合,因此可以保证它在数据库中是唯一的。 我按如下顺序排列列:PK,FK,然后按字母顺序排列其余列 有没有更好,更标准的方法来做到这一点?

10
为什么Java程序员喜欢将变量命名为“ clazz”?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引文回答。 去年关闭。 改善这个问题 我已经看到很多代码都有声明,例如Class clazz,它来自哪里?这是某种约定吗?我认为'clazz'甚至不是一个英文单词,根本没有任何意义,那么多的程序员又怎能巧称一个错误的名字呢?

5
关系表命名约定
我正在开始一个新项目,并希望从一开始就获取我的表名和列名。例如,我一直在表名中使用复数形式,但是最近学习到的单数形式是正确的。 因此,如果我得到一个表“ user”,然后得到只有该用户拥有的产品,该表应该命名为“ user_product”还是“ product”?这是一对多的关系。 进一步,如果我(出于某种原因)对每个产品有几个产品描述,是“ user_product_description”还是“ product_description”还是“ description”?当然,要设置正确的外键。仅将描述命名是有问题的,因为我也可以具有用户描述或帐户描述等。 如果我想要一个只有两列的纯关系表(很多),该怎么办?“ user_stuff”还是“ rel_user_stuff”之类的?如果是第一个,那么这与“ user_product”有什么区别? 我们非常感谢您提供的任何帮助,如果有人建议您使用某种命名约定标准,请随时进行链接。 谢谢

10
外键命名方案
我只是第一次开始使用外键,我想知道是否有用于它们的标准命名方案? 给定这些表: task (id, userid, title) note (id, taskid, userid, note); user (id, name) 在“任务具有注释”的情况下,“任务”由用户拥有,而“用户”编写注释。 在这种情况下如何命名三个外键?或者,这甚至有关系吗? 更新:此问题是关于外键名称,而不是字段名称!

29
为什么在C ++类中的成员变量上使用前缀
许多C ++代码使用语法约定来标记成员变量。常见的例子包括 公共成员的m_ memberName(完全使用公共成员) _ 私人成员或所有成员的memberName 其他人试图在使用成员变量时强制使用this-> 成员。 以我的经验,大多数较大的代码库都无法始终如一地应用这些规则。 在其他语言中,这些约定的使用范围远远不够。我只偶尔在Java或C#代码中看到它。我想我从未在Ruby或Python代码中看到过它。因此,似乎有一种趋势是使用更现代的语言,不对成员变量使用特殊标记。 这个约定是今天在C ++中还是有用的还是仅仅是过时的。特别是因为跨库使用不一致。其他语言没有表明没有成员前缀也可以做到吗?


11
如何命名工厂之类的方法?
我猜想大多数类似工厂的方法都是以开头的create。但是为什么将它们称为“ 创建 ”?为什么不“ 制作 ”,“ 产生 ”,“ 建立 ”,“ 产生 ”或其他?只是口味问题吗?约定?还是“创建”中有特殊含义? createURI(...) makeURI(...) produceURI(...) buildURI(...) generateURI(...) 您一般会选择哪一个,为什么?


12
您对Java中的个人/爱好项目使用什么程序包命名约定?
我已经熟悉使用域名创建唯一的包名称(即package com.stackoverflow.widgets)的标准Java包命名约定。但是,对于如何为个人项目选择包名称,我从未见过任何建议。我认为是因为这确实是个人喜好问题。 因此,如何为永远不会投入生产的个人项目选择软件包名称(您可能会在业余时间尝试使用新框架)。假设您没有一个个人网站,可以使用其域来创建您的包裹结构,您将(或将要)做什么?您是否有一个逻辑系统可以为爱好项目生成新的程序包名称,还是仅使用简单的一次性程序包名称mypackage? 由于我只是想知道人们对此有何想法,因此我将其设为社区Wiki。 就我个人而言,我从来没有想过,但是我想今晚与Wicket一起玩耍,结果发现我对如何组织自己的业余项目并不清楚。对于爱好项目,至少有一个单独的,不同的软件包命名约定(至少在我看来是这样)将是使个人代码和与工作相关的代码清楚地分开的一种好方法。 我在考虑一个简单的层次命名约定,以将个人项目的源代码保存在单个根文件夹中: 使用myprojects作为根文件夹 追加项目名称 添加任何其他子包名称 因此,我的Wicket项目将在软件包中,myprojects.learningwicket而单元测试将在软件包中myprojects.learningwicket.tests(例如)。



24
我应如何命名将两个表映射在一起的表?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 3年前关闭。 改善这个问题 假设我有两个表: Table: Color Columns: Id, ColorName, ColorCode Table: Shape Columns: Id, ShapeName, VertexList 我该如何称呼将颜色映射为形状的表? Table: ??? Columns: ColorId, ShapeId

3
唯一约束的命名约定
命名约定很重要,并且主键和外键是常用且显而易见的约定(分别为PK_Table和FK_Table_ReferencedTable)。IX_Table_Column索引的命名也相当标准。 那UNIQUE约束呢?此约束是否有公认的命名约定?我看过UK_TableName_Column,UQ_TableName_Column和有人推荐AX_TableName_Column-我不知道那是哪里来的。 我通常使用过,UQ但我并不特别喜欢它,而且我不喜欢不得不针对UK倡导者来捍卫自己选择使用它的选择。 我只想看看是否在最普遍的命名上达成共识,或者关于一个人为什么比其他人更有意义的一个很好的理由。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.