Tag: 命名约定

Python的名字不断变化

在其他语言中,有助于生成更好的代码的一般指导原则总是尽可能隐藏所有内容。 如果不确定某个variables是否应该是私人的或者是受保护的,那么最好是与私人相关。 这对Python是否也适用? 我是否应该首先在所有内容上使用两个主要的下划线,并且只在需要时将它们隐藏起来(只有一个下划线)? 如果约定只使用一个下划线,我也想知道理由。 这是我留在JBernardo答案的评论。 它解释了为什么我问这个问题,为什么我想知道为什么Python与其他语言不同: 我来自培养你的语言,认为所有的东西都应该像所需要的一样公开。 理由是这将减less依赖性并使代码更安全地进行更改。 Python的做法是相反的 – 从公开开始走向隐藏 – 对我来说是很奇怪的。

C#GUI命名约定的最佳实践?

无论是用WinForms还是XAML编写的graphics用户界面,在我看到的项目之间似乎都有着最广泛的命名约定。 对于一个人的名字简单的TextBox ,我已经看到了各种命名约定: TextBox tbName // Hungarian notation TextBox txtName // Alternative Hungarian TextBox NameTextBox // Not even camelCase TextBox nameTextBox // Field after field with TextBox on the end TextBox TextBoxName // Suggested in an answer… TextBox textBoxName // Suggested in an answer… TextBox uxName // Suggested in an answer… TextBox name // Deceptive […]

Java布尔getters“是”vs“是”

我知道Java的布尔getters约定包含前缀“is”。 isEnabled isStoreOpen 但是如果主题是复数呢? 也就是说,如果不想知道某家商店是否开放,我想知道所有商店是否开放? isStoresOpen()在英语中没有意义。 我很想写下getters: areStoresOpen areDogsCute areCatsFuzzy 而且我认为这是有道理的,但是我被其他人告知,我应该把它吸起来,放弃主题动词协议,并使用isStoresOpen , isDogsCute , isCatsFuzzy 。 无论如何,我应该怎样做一个复杂的主题布尔getters?

是否有一个Django应用程序的命名约定

是否有创build一个由多个单词组成的Django应用程序的首选命名约定? 例如,以下哪一项是首选? my_django_app my-django-app 更新:不允许在语法上 mydjangoapp 推荐的解决scheme 虽然所有这些可能是 选项1和3在语法上是允许的,是否有偏好? 看Django通过将应用程序名称和模型名称与下划线相结合来创build表名的方法,我倾向于选项#1。 思考?

我应该停止对抗Visual Studio的默认命名空间命名约定?

我正在开发一个MVVM项目,所以我的项目中有像Models,ViewModels,Windows等文件夹。每当我创build一个新类时,Visual Studio都会自动将文件夹名称添加到名称空间中,而不是只保留项目 – 级别的命名空间。 所以,向ViewModels文件夹添加一个新的类将导致命名空间MyProject.ViewModels而不仅仅是MyProject 。 当我第一次遇到这个时,它使我烦恼。 我的类名非常清晰,有时甚至包含文件夹的名称(例如, ContactViewModel )。 我很快发现自己手动删除名称空间上的文件夹名称。 我什至试图创build一个自定义的类模板(见这个问题 ),但我不能得到这个工作,所以继续手动做。 但是,我开始怀疑,如果这个惯例存在,我只是没有看到一个很好的理由。 如果由于某种原因,有许多相同的类名被组织到文件夹中,我可以看到它是有用的,但这似乎并不是特别常见的情况。 问题: 为什么命名空间名称的公共约定反映文件夹结构? 你遵守这个惯例吗? 为什么?

主键/外键命名约定

在我们的开发小组中,我们对主键和外键的命名规则有一个激烈的争论。 我们组中基本上有两个学派: 1: Primary Table (Employee) Primary Key is called ID Foreign table (Event) Foreign key is called EmployeeID 要么 2: Primary Table (Employee) Primary Key is called EmployeeID Foreign table (Event) Foreign key is called EmployeeID 我不想在任何列中复制表的名称(所以我更喜欢上面的选项1)。 从概念上讲,它与其他语言中的许多推荐实践一致,即在其属性名称中不使用对象的名称。 我认为命名外键EmployeeID (或者Employee_ID可能更好)告诉读者它是Employee Table的ID列。 其他一些人则更喜欢选项2,其中您指定了以表名为前缀的主键,以便整个数据库中的列名相同。 我明白了这一点,但是现在你不能直观地将主键与外键区分开来。 此外,我认为在列名中包含表名是多余的,因为如果您将表视为实体,将列视为实体的属性或属性,则将其视为Employee的ID属性,不是EmployeeID属性。 我不去问我的同事他的PersonAge或PersonGender是什么。 我问他年龄是多less。 所以就像我说的那样,这是一场激烈的辩论,我们一直在继续。 我有兴趣得到一些新的观点。

用户界面上的“ID”或“Id”

我工作的质量保证经理告诉我,我的桌面应用程序中有一个错误,因为提示符号是“操作员ID”,应该是“操作员ID”。 她的论点是“身份证”是指弗洛伊德的“心理装置”的自我部分,在语义上是不正确的。 现在成为一名肛门工程师(AE),我当然必须去查找Id和ID,从我粗略的调查(Google)看来,ID就像Id一样是弗洛伊德的自我使用。 所以我的推理是,Id是“标识符”的缩写版本,并且比通常指示两个词语缩写的ID更正确或至less更常用。 我可以改变用户界面,但是我不会把我的职业作为一个AE,所以我想知道是否有任何最佳实践或参考这种东西,我可以用来支持我的论点? 请记住,这个问题涉及到用户界面,而不是源代码,缩写和框架是哲学的完全不同的分支。

哈斯克尔:为什么约定名称辅助函数“去”?

在阅读Haskell资料或来源时,我看到了很多,但是我从来没有真正感觉到这一点 – (我想它在我脑海里有“goto”的负面含义)。 我开始跟LYAH一起学习Haskell,这就是我在写褶皱的时候使用acc和step的倾向。 写作大会从哪里来? 最重要的是,这个名字到底是什么意思呢?

什么是适用于MySQL FK的命名约定?

因为它们必须是唯一的,我应该在MySQL数据库中命名FK?

适用于.NET委托types的命名约定?

按照惯例,类通常被命名为名词,动词和接口(如形容词)。 代表的通用命名约定是什么? 或者当代表被列入types和其他事物时,区分它的名字的好方法是什么? 我的直接假设是命名委托更可能是一个形容词,因为单个方法接口通常可以用委托来替代。 一些想法: delegate object ValueExtracting(object container); delegate object ValueExtractor(object container); delegate object ValueExtractionHandling(object container); delegate object ValueExtractionHandler(object container);