Questions tagged «naming-conventions»

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

10
Java命名约定(带缩写词)
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 以下Java类的正确名称是什么: DVDPlayer或DvdPlayer?


6
为什么在CSS选择器/ HTML属性中首选使用破折号?
过去,我一直使用下划线在HTML中定义类和id属性。在过去的几年中,我改用破折号,主要是为了使自己适应社区中的趋势,而不一定是因为这对我来说很有意义。 我一直认为破折号有更多弊端,但我看不出这样做的好处: 代码完成和编辑 大多数编辑器将破折号视为单词分隔符,因此我无法跳到想要的符号。假设课程为“ featured-product”,我必须自动完成“ featured”,输入连字符,然后完成“ product”。 带下划线的“ featured_product”被视为一个单词,因此可以一步完成。 在文档中导航同样如此。跳字或双击类名会被连字符打断。 (更一般而言,我将类和id视为令牌,因此对令牌来说,令牌应该很容易拆分对于我来说没有任何意义。) 算术运算符的歧义 使用破折号会中断对象属性对 JavaScript中表单元素的访问。只有下划线才有可能: form.first_name.value='Stormageddon'; (不可否认,我自己不是以这种方式访问​​表单元素,但是当将破折号和下划线作为通用规则时,请考虑有人可能会这样做。) 诸如Sass之类的语言(尤其是在整个Compass框架中)已经以破折号作为标准,甚至对于变量名也是如此。他们最初也使用下划线。这被不同地解析的事实令我感到奇怪: $list-item-10 $list-item - 10 与跨语言的变量命名不一致 以前,我曾经用underscored_namesPHP,ruby,HTML / CSS和JavaScript 编写变量。这是方便且一致的,但是再次为了“适合”我现在使用: dash-case 在HTML / CSS中 camelCase 在JavaScript中 underscore_case 在PHP和ruby中 这实际上并没有给我带来太大的困扰,但是我想知道为什么它们似乎如此故意地变得如此混乱。至少使用下划线可以保持一致性: var featured_product = $('#featured_product'); // instead of var featuredProduct = $('#featured-product'); 差异造成了我们不得不不必要地转换字符串以及潜在错误的情况。 所以我问:为什么社区几乎普遍使用破折号,并且有什么理由要超过下划线? 从开始的那段时间开始就有一个相关的问题,但是我认为这不是(或者不应该)只是一个口味问题。我想了解一下,如果真的只是出于口味问题,为什么我们都同意这个约定。

10
REST API是否有任何命名约定准则?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引文回答。 2年前关闭。 改善这个问题 创建REST API时,API中是否有任何有关命名约定的准则或事实上的标准(例如:URL端点路径组件,querystring参数)?骆驼帽是规范,还是下划线?其他? 例如: api.service.com/helloWorld/userId/x 要么 api.service.com/hello_world/user_id/x 注意:这不是RESTful API设计的问题,而是用于最终使用的路径组件和/或查询字符串参数的命名约定准则。 任何准则,将不胜感激。

7
单元测试有哪些流行的命名约定?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或进一步的讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 一般 所有测试均遵循相同的标准。 明确每个测试状态是什么。 明确预期的行为。 例子 1)MethodName_StateUnderTest_ExpectedBehavior Public void Sum_NegativeNumberAs1stParam_ExceptionThrown() Public void Sum_NegativeNumberAs2ndParam_ExceptionThrown () Public void Sum_simpleValues_Calculated () 资料来源:单元测试的命名标准 2)用下划线分隔每个单词 Public void Sum_Negative_Number_As_1st_Param_Exception_Thrown() Public void Sum_Negative_Number_As_2nd_Param_Exception_Thrown () Public void Sum_Simple_Values_Calculated () 其他 用Test结束方法名称 以类名开头的方法名

7
(Java)软件包组织有最佳实践吗?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引文回答。 4年前关闭。 改善这个问题 不久前,我在这里看到一个有关Java包的细粒度组织的问题。例如,my.project.util,my.project.factory,my.project.service,等。 我现在找不到它,所以我不妨问这个问题。 是否有关于Java包组织的最佳实践以及它们中包含哪些内容? 您如何在Java项目中组织类? 例如,我正在与几个人一起工作的一个项目有一个称为bean的软件包。它最初是一个包含简单bean的项目,但最终(由于经验不足和时间不足)(几乎)包含了所有内容。我通过将一些工厂类放入工厂包中(使用创建bean的静态方法的类)对它们进行了一些清理,但是我们还有其他一些类在执行业务逻辑,而其他一些类则在进行简单的处理(而不是使用业务逻辑),例如检索来自属性文件的代码消息。 感谢您的想法和意见。

7
正确的Bash和Shell脚本变量大写
我遇到了很多都带有大写字母的变量的shell脚本,而且我一直认为这有一个严重的误解。我的理解是,按照惯例(也许很久以前就有必要了),环境变量是大写的。 但是在像Bash这样的现代脚本环境中,我一直首选使用小写的名称表示临时变量,而使用大写的名称表示导出(即环境)变量。例如: #!/usr/bin/env bash year=`date +%Y` echo "It is $year." export JAVA_HOME="$HOME/java" 这一直是我对事情的看法。是否有任何权威人士同意或不同意这种方法,或者纯粹是风格问题?



18
网址:Dash与下划线[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 7年前关闭。 改善这个问题 应该是/ about_us还是/ about-us? 从可用性的角度来看,我个人认为/ about-us对于最终用户而言要好得多,而Google和大多数其他网站(和javascript框架)则使用下划线命名模式。只是风格问题吗?破折号是否存在兼容性问题?

6
MongoDB的命名约定是什么?
是否有针对MongoDB实体的一组首选命名约定,例如数据库,集合,字段名称? 我在沿着这些思路思考: 数据库:由目的(单数单词)组成,以“ db”结尾–所有小写:imagedb,resumedb,memberdb等。 收藏:小写复数:图片,履历, 文档字段:lowerCamelCase,例如memberFirstName,fileName等

2
Java中枚举的命名:单数还是复数?
是否有关于如何命名Java枚举的“官方”建议? enum Protocol { HTTP, HTTPS, FTP } 要么 enum Protocols { HTTP, HTTPS, FTP } 我知道在.Net世界中,建议使用单数形式,但表示位标志的枚举除外。只是好奇Java是否有类似的东西。 似乎是.Net的一个相关问题:枚举是单数还是复数?

6
什么时候应该在C#方法名称中使用“ Try”?
我们正在与我们的同事讨论方法名称以“ Try”开头的含义。 有以下意见: 当方法可以返回空值时,请使用“尝试”。 该方法不会引发异常时,请使用“尝试”。 官方定义是什么?方法名称中的“尝试”是什么意思?是否有关于此的官方指南?


12
命名约定:“状态”与“状态” [关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引文回答。 6年前关闭。 改善这个问题 快速问题:我想听听您在命名两个字段(例如“ Foo.currentState”,“ Foo.status”)和类型(例如“枚举FooState”和“枚举”)时何时使用“状态”和“状态”的想法FooStatus”。是否有讨论过的约定?我们应该只使用一个吗?如果是这样的话,如果不是,我们应该如何选择?

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.