我目前正在将一些项目从Ant移植到Maven。 就我而言,我想用完善的约定来寻找groupId和artifactId ,但是我找不到任何详细的约定(有一些,但是他们没有涵盖我想知道的要点)。 以这个项目为例,首先是Java包: com.mycompany.teatimer 茶定时器实际上是两个字,但Java包命名约定禁止插入下划线或连字符,所以我一起写。 我select了与包ID相同的groupId ,因为我认为这是个好主意。 是吗? 最后,我必须select一个artifactId ,我现在去teatimer 。 但是当我查看其他Maven项目时,他们使用连字符来分割artifactId的单词,例如: tea-timer 。 但是,当连接到groupId : com.mycompany.teatimer.tea-timer时,它看起来很奇怪。 你会怎么做? 另一个例子: 包名称: com.mycompany.awesomeinhouseframework groupId : com.mycompany.awesomeinhouseframework (?) artifactId : awesome-inhouse-framework (?)
在创buildREST API时,API中是否有命名约定或实际标准(例如:URL端点path组件,查询string参数)? 骆驼帽是常态还是下划线? 其他? 例如: api.service.com/helloWorld/userId/x 要么 api.service.com/hello_world/user_id/x 注意:这不是RESTful APIdevise的问题,而是用于最终path组件和/或查询string参数的命名约定指南。 任何指导方针将不胜感激。
我应该为我的HTML文件select哪种扩展名,为什么?
我们正在和我们的同事讨论如果方法名称以“Try”开头,这意味着什么。 有以下意见: 当方法可以返回空值时使用“Try”。 当方法不会抛出exception时使用“Try”。 什么是官方定义? 在方法名称中,“Try”是什么意思? 有关于此的一些官方文字?
例如,我有一个称为购买服务的RESTful服务。 我应该命名我的存储库吗? purchaserestservice purchase-rest-service purchase_rest_service 或者是其他东西? 什么是约定? 在github呢? 公共回购应该遵循一些标准吗?
在过去,我一直使用下划线来定义HTML中的类和id属性。 在过去的几年中,我改变了破折号,主要是为了与社会潮stream保持一致,不一定是因为这对我有意义。 我一直认为破折号有更多的缺点,我没有看到好处: 代码完成和编辑 大多数编辑器将短划线作为单词分隔符,所以我无法选中所需的符号。 说class级是“ featured-product ”,我必须自动完成“ featured ”,input连字符,并完成“ product ”。 下划线“ featured_product ”被视为一个单词,因此可以一步填充。 导航整个文档也是如此。 跳字或双击class名被连字符打破。 (更一般地说,我把class和id当作token ,所以对于我来说一个token在连字符上应该很容易被分割是没有意义的。) 含算术运算符的歧义 使用破折号破坏对象属性访问以在JavaScript中形成元素 。 这只可能与下划线: form.first_name.value='Stormageddon'; (不可否认,我自己并不是以这种方式访问表单元素,但是当把破折号与下划线作为一个普遍规则来决定时,可以考虑有人可能)。 像Sass这样的语言(特别是在整个Compass框架中)已经以破折号作为标准,甚至是variables名称。 他们原来也是在开始时使用了下划线。 事实上,这是不同的parsing让我感到奇怪: $list-item-10 $list-item – 10 不同语言的variables命名不一致 回到当天,我曾经为PHP,Ruby,HTML / CSS和JavaScript中的variables编写underscored_names 。 这是方便和一致的,但为了“适应”我现在使用: dash-case在HTML / CSS中 在JavaScript中使用camelCase 在PHP和ruby underscore_case 这并不是真的让我感到困扰,但我想知道为什么这些变得如此失调,似乎是故意的。 至less有下划线是可以保持一致的: var featured_product = $('#featured_product'); // instead of var featuredProduct […]
我问这个问题,尽pipe阅读类似,但不完全是我想在C#命名约定枚举和匹配属性 我发现我倾向于用复数命名枚举,然后把它们用作单数,例如: public enum EntityTypes { Type1, Type2 } public class SomeClass { /* some codes */ public EntityTypes EntityType {get; set;} } 当然这是有效的,这是我的风格,但是谁能find这样的惯例潜在的问题呢? 虽然我有一个“丑陋”的名字,但是“状态” public enum OrderStatuses { Pending, Fulfilled, Error, Blah, Blah } public class SomeClass { /* some codes */ public OrderStatuses OrderStatus {get; set;} } 附加信息:也许我的问题不够清楚。 命名我定义的枚举types的variables时,我经常不得不认真思考。 我知道最好的做法,但是这并不能帮助我减轻命名这些variables的工作。 我不可能公开所有我的枚举属性(称为“状态”)为“MyStatus”。 我的问题:任何人都可以find上述我的约定潜在的问题? 这不是最佳做法。 […]
应该用hyphens.js,camelCased.js还是别的什么来命名文件? 这里我没有find这个问题的答案。
一般 按照相同的标准进行所有testing。 清楚每个testing状态是什么。 具体说明预期的行为。 例子 1)MethodName_StateUnderTest_ExpectedBehavior Public void Sum_NegativeNumberAs1stParam_ExceptionThrown() Public void Sum_NegativeNumberAs2ndParam_ExceptionThrown () Public void Sum_simpleValues_Calculated () 来源: unit testing的命名标准 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结束方法名称 用类名称启动方法名称
我知道有很多争议(可能没有争议,但至less有争议)关于哪个命名约定是最适合JavaScript的。 你如何命名你的variables,函数,对象等? 我会把自己的想法留在这里,因为我从来没有做过很长时间的JS(只有几年),而且我刚刚收到一个请求,要创build一个命名约定的文档,以便在我们的项目中使用。 所以我一直在寻找(谷歌),有很多不同的意见。 我读过的关于JS的书本身也使用了不同的命名约定,但是他们都赞同这一点:“找出适合你的东西,坚持下去”。但是现在我读了很多东西,发现我像其他一些方法比我现在习惯的更好一些。