Tag: 命名约定

抽象类的命名约定

我清楚地记得,有一次,微软提出的指导方针是在抽象类中增加“基本”后缀,以避免它是抽象的。 因此,我们有类似System.Web.Hosting.VirtualFileBase , System.Configuration.ConfigurationValidatorBase , System.Windows.Forms.ButtonBase ,当然还有System.Collections.CollectionBase 。 但是我注意到,最近,框架中的很多抽象类似乎没有遵循这个约定。 例如,下面的类都是抽象的,但不遵循这个约定: System.DirectoryServices.ActiveDirectory.DirectoryServer System.Configuration.ConfigurationElement System.Drawing.Brush System.Windows.Forms.CommonDialog 而这正是我可以在几秒钟内鼓起来的。 于是我开始查阅官方文件的内容,以确保我不是疯了。 我在MSDN 开发类库的devise指南中find了类,结构和接口的名称 。 奇怪的是,我没有提到在抽象类的名字末尾添加“Base”的指南。 该指南已不再适用于框架1.1版本。 那么,我输了吗? 这个指导方针是否存在? 它是否被一言不发放弃了? 在过去的两年里,我自己一直创造了很长的名字吗? 有人在这里扔骨头。 更新我并不疯狂。 指南存在。 Krzysztof Cwalina在2005年抱怨。

对于布尔型字段,getter / setter的命名约定是什么?

例如。 boolean isCurrent = false; 你怎么称呼它的吸气和二传手?

有关如何命名资源的约定?

有什么约定如何在Android中命名资源? 例如,button,文本视图,菜单等

是否有一个MySQL的命名约定?

以下是我如何做到这一点: 表名是小写字母,用下划线来分隔单词,并且是单数的(例如'foo','foo_bar'等等 我一般(不总是)有一个自动增量PK。 我使用以下约定:tablename_id(例如'foo_id','foo_bar_id'等)。 当一个表包含一个外键的列时,我只是从它来自的任何表中复制该键的列名称。 例如,假设表'foo_bar'有FK'foo_id'(其中'foo_id'是'foo'的PK)。 当定义FK来强制引用完整性时,我使用以下内容:tablename_fk_columnname(例如进一步的示例3,它将是'foo_bar_foo_id')。 由于这是一个表名/列名称组合,所以在数据库中保证是唯一的。 我命令这样的列:PKs,FKs,然后按字母顺序排列其余的列 有没有更好,更标准的方法来做到这一点?

我是不道德的使用一个variables名称,只有大小写不同的types?

例如,拿这段代码: var person = new Person(); 或为你Pythonistas: person = Person() 我常常被告知这是多么糟糕,但还没有看到这两行代码不道德的例子。 对我来说,人是一个人,试图给它另一个名字是浪费时间。 我认为在语法突出的日子里,这将是一个大问题。 但是现在,除了variables名以外,很容易告诉types名称。 哎呀,在SO上看到这个区别很容易。 还是有什么我失踪? 如果是这样,如果你能提供一个导致问题的代码的例子,这将是有帮助的。

PostgreSQL的命名约定

我在哪里可以find有关PostgreSQL命名约定的详细手册? (表名与骆驼大小写,序列,主键,约束,索引等)

存储过程的命名约定是什么?

我已经看到了命名存储过程的各种规则。 一些人在usp_前面加上了sproc的名字,其他的名字是应用名称的缩写,还有一些是所有者的名字。 除非你是真正的意思,否则你不应该在SQL Server中使用sp_。 一些用动词(Get,Add,Save,Remove)启动proc名字。 其他则强调实体名称。 在拥有数百个sprocs的数据库中,当您认为已经存在的时候,可能会很难滚动并find合适的sproc。 命名约定可以使查找更简单。 你使用命名约定? 请描述一下,并解释为什么你比其他select更喜欢它。 答复摘要: 每个人似乎都提倡命名的一致性,对于每个人来说,使用相同的命名约定可能比使用特定命名约定更为重要。 前缀:当很多人使用usp_或类似的东西(但很less使用sp_)时,许多人使用数据库或应用程序名称。 一个聪明的DBA使用gen,rpt和tsk来区分用于报告或任务的一般CRUD sprocs。 动词+名词似乎比名词+动词稍微受欢迎。 有些人对动词使用SQL关键字(Select,Insert,Update,Delete),而其他人则使用非SQL动词(或缩写),如Get和Add。 有些区分singluar和复数名词来表示是否正在检索一个或多个logging。 最后在适当的地方build议一个额外的短语。 GetCustomerById,GetCustomerBySaleDate。 有些人在名字段之间使用下划线,有些人避免使用下划线。 app_ Get_Customer与appGetCustomer – 我想这是一个可读性问题。 可以将大量sprocs分离到Oracle包或Management Studio(SQL Server)解决scheme和项目或SQL Server架构中。 应该避免不可思议的缩写。 为什么我select我所做的答案:有很多好的答案。 谢谢你们! 正如你所看到的,select一个将是非常困难的。 我select的那个对我产生了共鸣。 我遵循了他描述的相同的path – 尝试使用Verb + Noun,然后无法find所有适用于Customer的sprocs。 能够find现有的sproc,或者确定是否存在,是非常重要的。 如果有人无意中用另一个名字创build了一个重复的sproc,就会出现严重的问题。 由于我通常在数以百计的sprocs非常大的应用程序工作,我有一个最容易find命名方法的首选项。 对于较小的应用程序,我可能会提倡动词+名词,因为它遵循方法名称的通用编码约定。 他还提倡使用应用程序名称而不是非常有用的usp_作为前缀。 正如几个人指出的,有时数据库包含多个应用程序的sprocs。 因此,以应用程序名称作为前缀有助于分离sprocs,并帮助DBA和其他人确定哪个应用程序是用于sproc的。

外键命名scheme

我刚开始第一次使用外键,我想知道是否有一个标准的命名scheme使用它们? 鉴于这些表格: task (id, userid, title) note (id, taskid, userid, note); user (id, name) 任务具有Notes的位置,任务由用户拥有,而用户创buildNotes。 如何在这种情况下命名三个外键? 或者, 它甚至不重要 ? 更新 :这个问题是关于外键名称,而不是字段名称!

命名约定 – C ++和C#variables中的下划线

在类字段中看到一个_varvariables名是很常见的。 下划线是什么意思? 有没有这些特殊的命名约定的参考?

什么是MongoDB的命名约定?

是否有一组首选的MongoDB实体的命名约定,如数据库,集合,字段名称? 我正在这样思考: 数据库:包含目的(以单数forms)并以“db”结尾 – 全部小写:imagedb,resumedb,memberdb等 作品集:plural in lower case:图片,简历, 文档字段:lowerCamelCase,例如memberFirstName,fileName等