XML文档是否有任何标准,事实上或其他方式? 例如哪个是写“标签”的“最佳”方式? <MyTag /> <myTag /> <mytag /> <my-tag /> <my_tag /> 同样,如果我有一个更好的属性的枚举值 <myTag attribute="value one"/> <myTag attribute="ValueOne"/> <myTag attribute="value-one"/>
我想大多数工厂像方法开始create 。 但为什么他们叫做“ 创造 ”? 为什么不“ 制造 ”,“ 生产 ”,“ build造 ”,“ 生成 ”或其他? 这只是一个品味问题吗? 一个约定? 还是在“创造”中有特殊意义? createURI(…) makeURI(…) produceURI(…) buildURI(…) generateURI(…) 一般你会select哪一个,为什么?
假设我有两个表格: Table: Color Columns: Id, ColorName, ColorCode Table: Shape Columns: Id, ShapeName, VertexList 我应该怎样称呼映射颜色的表格? Table: ??? Columns: ColorId, ShapeId
我在一段时间以前想过这个问题,最近又重新铺陈了一遍,因为我的商店正在开发第一个真正的Java Web应用程序。 作为介绍,我看到两个主要的命名策略。 (要清楚的是,我并不是指整个'domain.company.project'部分,我正在谈论下面的包规范。)无论如何,我看到的包命名约定如下: function:根据业务领域的架构而不是他们的身份,根据他们的function命名你的包。 另一个术语可能是根据“图层”命名的。 所以,你会有一个* .ui包和一个* .domain包和一个* .orm包。 你的软件包是水平切片而不是垂直的。 这比逻辑命名更普遍。 事实上,我不相信我曾经见过或听说过这样的项目。 这当然会使我感到不安(有点像以为你已经想出了NP问题的解决scheme),因为我不是非常聪明,我认为每个人都应该有这样的理由。 另一方面,我并不反对人们只是在房间里忽略了大象,我从来没有听说过这样做包命名的实际理由。 这似乎是事实上的标准。 逻辑:根据其业务域标识命名包 ,并将与该垂直切片function相关的每个类放入该包中。 就像我之前提到过的,我从来没有见过或听说过这样的事情,但是这对我来说意义重大。 我倾向于垂直而不是水平地接近系统。 我想进入并开发订单处理系统,而不是数据访问层。 显然,在系统的开发中,我很有可能触及数据访问层,但重要的是我不这么想。 当然,这意味着,当我收到变更单或想要实现一些新function时,最好不用为了find所有相关的类而在一堆包中钓鱼。 相反,我只是看X包,因为我在做什么与X. 从开发的angular度来看,我认为这是一个主要的胜利,让你的软件包logging你的业务领域,而不是你的架构。 我觉得这个领域几乎总是系统的一部分,这个系统的架构,尤其是在这个系统的架构,在实现中几乎变得平淡无奇。 事实上,我可以用这种命名规则来到系统,并立即从命名包知道它处理订单,客户,企业,产品等,似乎相当方便。 看起来这样可以让你更好地利用Java的访问修饰符。 这使您可以更清楚地定义子系统界面而不是系统层。 所以,如果你有一个命令子系统,你希望是透明持久的,那么理论上你可以永远不要让别的东西知道它是持久的,因为不必在dao层创build它的持久化类的公共接口,而是把dao类打包成只有它处理的类。 显然, 如果你想公开这个function,你可以为它提供一个接口或者公开它。 看起来,通过将系统function的垂直切片分割到多个软件包中,您会失去很多。 我认为我可以看到的一个缺点是,它确实使分层更难一些。 不要只是删除或重新命名一个包,然后用一种替代技术删除一个新的包,你必须进入并更改所有包中的所有类。 但是,我不认为这是一个大问题。 这可能是由于缺乏经验,但我必须想象,与您在系统中进入和编辑垂直要素切片的次数相比,您交换技术的次数会减less。 所以我想这个问题将会出现在你身上,你怎么给你的包装起名字,为什么? 请理解,我不一定认为我在这里偶然发现了金鹅。 我对所有这些大部分学术经验都很陌生。 然而,我不能在我的推理中发现漏洞,所以我希望你们都能这样,我可以继续前进。
在Java中编写实用程序类时,有哪些遵循的指导原则? 包装应该是“util”还是“utils”? 它是ClassUtil还是ClassUtils? 什么时候上课是“助手”还是“实用”? 实用程序或公用程序? 或者你使用它们的混合物? 标准的Java库使用Utils和Utilities: javax.swing.Utilities javax.print.attribute.AttributeSetUtilities中 javax.swing.plaf.basic.BasicGraphicsUtils Apache使用各种Util和Utils,虽然大多数Utils: org.apache.commons.modeler.util.DomUtil org.apache.commons.modeler.util.IntrospectionUtils org.apache.commons.io.FileSystemUtils org.apache.lucene.wordnet.AnalyzerUtil org.apache.lucene.util.ArrayUtil org.apache.lucene.xmlparser.DOMUtils Spring使用了很多的Helper和Utils类: org.springframework.web.util.UrlPathHelper org.springframework.core.ReflectiveVisitorHelper org.springframework.core.NestedExceptionUtils org.springframework.util.NumberUtils 那么,你如何命名你的公用事业类?
我假设“我”是增量,“a”是分配,但我无法弄清楚或find答案。 此外,它看起来非常类似于我认为令人困惑的非标准itoa 。
我经常发现自己实现了一个类,把某种自己的状态属性作为一个枚举:我有一个Status枚举和一个状态types的Status属性。 我应该如何解决这个名称冲突? public class Car { public enum Status { Off, Starting, Moving }; Status status = Status.Off; public Status Status // <===== Won't compile ===== { get { return status; } set { status = value; DoSomething(); } } } 如果状态枚举对于不同types是通用的,我会把它放在课堂外面,问题就解决了。 但状态只适用于汽车,因此在课堂外申报枚举是没有意义的。 你在这种情况下使用什么命名约定? 注:这个问题在回答这个问题的意见中部分辩论过。 由于这不是主要问题,所以没有得到太多的知名度。 编辑:菲利普Ekbergbuild议国际海事组织优秀的解决scheme,为'状态'的具体情况。 不过,如果你想知道枚举/属性名称不同的解决scheme,那么我会很有兴趣的,正如Michael Prewecki的回答 。 EDIT2(2010年5月):我最喜欢的解决scheme是复用枚举types名称,如Chris S.所build议。根据MS指南,这应该只用于标志枚举。 但是我越来越喜欢它了。 我现在也用它来定期枚举。
命名约定很重要,主键和外键通常使用明显的约定(分别为PK_Table和FK_Table_ReferencedTable )。 索引的IX_Table_Column命名也是相当标准的。 那么UNIQUE约束呢? 这个约束是否有一个通用的命名约定? 我见过UK_TableName_Column , UQ_TableName_Column和有人推荐AX_TableName_Column – 我不知道这是从哪里来的。 我通常使用UQ但我并不特别喜欢它,而且我也不喜欢为保卫我对UK代言人的select。 我只想看看是否对最stream行的命名达成共识,或者说为什么比其他的更有意义。
R代码支持哪些命名variables和函数的约定? 据我所知,有几个不同的约定,所有这些约定并存在和谐的和声中: 1.使用周期分隔符,例如 stock.prices <- c(12.01, 10.12) col.names <- c('symbol','price') 优点:在R核心领域具有历史意义,在R核心中stream行,并由Google R风格指南推荐 。 缺点: Rife具有面向对象的含义,并且混淆了R的新手 2.使用下划线 stock_prices <- c(12.01, 10.12) col_names <- c('symbol','price') 优点:在许多编程语言中是一个常见的约定; 受到Hadley Wickham风格指南的青睐,并在ggplot2和plyr软件包中使用。 缺点: R程序员没有被历史使用; 在Emacs-Speaks-Statistics(可以用'ess-toggle-underscore'改变)中被烦人的映射到'< – '操作符。 3.使用混合大写字母(camelCase) stockPrices <- c(12.01, 10.12) colNames <- c('symbol','price') 优点:似乎在多个语言社区有广泛的采用。 缺点:有近期先例,但没有历史使用(无论是在R基地还是其文件)。 最后,就好像它不够混乱,我应该指出,谷歌风格指南认为variables的点符号,但function的混合大写。 R包缺乏一致的风格在几个层面上是有问题的。 从开发者的angular度来看,这使得维护和扩展其他代码变得困难(特别是其风格与您自己的风格不一致的地方)。 从R用户的angular度来看,不一致的语法会加深R的学习曲线,通过乘以一个概念可能被expression的方式(例如,该date的铸造函数为Date(),as.date()或as_date()?date())。
<div id="example-value">或<div id="example_value"> ? 这个网站和Twitter使用第一种风格。 Facebook和Vimeo – 第二。 你使用哪一个?为什么?