Questions tagged «naming»

以最少的字符数给出含义和解释,其形式应为整个团队或整个社区所接受。

5
如果我讨厌C ++头文件怎么办?
我总是对头文件感到困惑。它们是如此奇怪:您包含的.h文件不包含.cpp,但.cpp也已通过某种方式进行编译。 最近,我加入了一个团队项目,并且当然使用.h和.cpp。 我知道这非常重要,但是我不能忍受复制粘贴我们拥有的多个类中的每个类中的每个函数声明。 如何有效处理2个文件的约定? 是否有任何工具可以帮助您解决此问题,或自动将以下示例中的一个文件更改为.h和.cpp?(特定于MS VC ++ 2010) class A { ... Type f(Type a,Type b) { //implementation here, not in another file! } ... }; Type f(Type a) { //implementation here } ...

17
如何在C#中命名私有变量?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 6年前关闭。 什么是C#中私有变量的最佳实践和最普遍接受的命名约定? private int myInteger; private int MyInteger; private int mMyInteger; private int _myInteger; private int _MyInteger; 神秘的其他选择 您使用哪个?为什么?(我的公司对C#来说还很陌生,我想选择一种最“行业认可”的方法来尝试进入我们的编码标准。)

3
命名“必要时执行X”方法
命名检查X是否需要完成的方法的好方法是什么?如果需要X可以这样做吗? 例如,如何命名新用户登录后更新用户列表的方法?UpdateListIfNeeded似乎太长了,虽然简单UpdateList意味着每次都可能进行昂贵且不必要的操作。EnsureListUpdated也是一个变体。 C#有一个bool TryXXX(args, out result)模式(例如int.TryParse(str, out num))来检查X是否可能并且可以这样做,但这是稍有不同的。

8
是否有用于命名类型的良好技术或测试?
一个尴尬,开放的问题,但这是我一直碰到的问题: 易于维护和使用的软件是经过精心设计的软件。试图使设计更直观意味着对组件进行命名,以使下一个开发人员应该能够推断出组件的功能。这就是为什么我们不将类命名为“ Type1”,“ Type2”等的原因。 当您对现实世界的概念(例如客户)进行建模时,这通常就像在对现实世界的概念进行建模后命名类型一样简单。但是,当您构建面向系统的抽象事物时,很容易用尽易于理解和消化的名称。 当尝试使用基本类型或接口描述组件的类型(而不是它们的工作方式)来命名类型系列时,对我来说,情况变得更糟。这自然导致每种派生类型试图描述实现的风格(例如IDataConnection,SqlConnection在.NET Framework中),但是如何表达复杂的内容,例如“通过反射工作并寻找一组特定的属性”呢? 然后,当你终于选择了一个名字,你觉得类型描述什么它试图做,你的同事问:“跆拳道这是否DomainSecurityMetadataProvider实际上做什么? ” 是否有任何好的技术来为组件选择一个好记的名称,或者如何在不弄乱名称的情况下构建一组组件? 我可以对名称进行任何简单的测试,以更好地了解名称是否为“好”,并且对其他人应该更直观吗?
23 design  naming 

13
“系统匈牙利语”表示法仍然有用吗?[关闭]
很难说出这里的要求。这个问题是模棱两可,含糊,不完整,过于宽泛或夸张的,不能以当前的形式合理地回答。如需帮助澄清此问题以便可以重新打开, 请访问帮助中心。 8年前关闭。 我在论坛上进行了搜索,但是找不到为什么应避免使用它的答案,而只是为什么它不是灵丹妙药。所以我不认为这个问题是重复的。 是否有有效的理由为什么我应该取消学习惯用的系统匈牙利语? 到目前为止,我发现使用它具有以下好处: 一致的变量命名 您无需搜索即可看到类型(智能在半数时间中已失效/已建立索引,因此这仍然是一个合理的原因) 语义仍然可以包含在名称的第二部分中 以及以下缺点: 惹恼了一些人(不知道为什么) 如果更改了类型,则该类型可能与变量的名称不匹配(我不认为这是正当的理由,类型很少更改,并且您拥有“全部重命名”) 所以为什么: vector<string> vecCityNames; wstring strCity = L"abc"; //more code here vecCityNames.push_back(strCity); 差于: vector<string> cityNames; wstring city = L"abc"; //more code here cityNames.push_back(city);//Are we pushing back int on a queue? Float on a stack? Something else?
23 c++  naming 

2
命名约定:最终字段(非静态)
今天,我与一位同事讨论了finalJava类中字段的命名。 在他的观点中,final字段也应视为常量,因为其值在创建实例后不会更改。 这将导致以下final字段命名约定: public class Foo { private static final String BLA_BLA = "bla"; private final String BAR_BATZ; ... } 在我看来,只有static final字段应被视为常量,而仅字段应final遵循通常的camelCase命名约定。 public class Foo { private static final String BLA = "bla"; private final String barBatz; ... } 现在我有点不确定,因为他是比我经验丰富的程序员,我通常同意他的观点,并认为他是一个非常好的开发人员。 有什么意见吗?
23 java  naming  final 


2
具有静态main方法的Java类的命名约定?
在阅读gnat的答案后,为什么在Java和C#中使用静态main方法而不是构造函数?我以他的回答来表示带有静态main方法的Java类的目的是to define a program entry point,而不是要成为程序本身。 可能有更好的方法来执行此操作,但是我通常使用带有静态main方法的类来执行以下简单操作: public class MenuLauncher { public static void main(String[] args) { Menu menu = new Menu(); menu.run(); } } 上面的代码是否是OOP的最佳实践,在这种情况下,具有静态main的类所做的仅是启动或启动包含在单独的非静态对象中的程序逻辑;毕竟main是静态的,所以MenuLauncher类本身不会受到很大限制吗?因为main是一个起点,所以除了作为切入点之外,我没有看到任何其他目的。 是否存在Java命名约定,通常用于包含main方法并用作程序入口点的类的类?

3
连续单词有数字的情况下如何驼峰?
此问题是从Stack Overflow 迁移而来的,因为可以在Software Engineering Stack Exchange上回答。 迁移 7年前。 只是想知道是否有人在这个拐角处就可以遵循惯例。我确实使用过Java,但认为C#人员也可能有一些不错的见识。 假设我正在尝试命名一个类,其中该类名称中的两个连续单词均为数字(请注意,同一问题可能会问到标识符名称)。无法得到一个很好的例子,但请考虑一下“ IEEE 802 16位值”之类的内容。 如果接受诸如的类名,则可以将连续的首字母缩写词组合在一起HttpUrlConnection。但这严重地使我有点想上课的名字IEEE80216BitValue。如果我必须选择,那会比IEEE802_16BitValue看起来像是一个严重的错误还要糟糕。对于较小的数字,我会考虑,IEEE802SixteenBitValue但这并不能很好地扩展。 外面有公约吗?似乎只有Microsoft的命名准则是对缩略语命名进行足够详细描述以完成工作的准则,但是没有人解决过类名中的数字。

7
为什么XML不称为EML?
来自维基百科 可扩展标记语言(XML)是用于以机器可读形式对文档进行编码的一组规则。它在W3C制定的XML 1.0 Specification [4]和其他几个相关规范中定义,所有这些都是免费的开放标准。[5] 调用简写XML而不是更自然的EML的历史原因是什么?
21 naming  xml  etymology 

2
处理程序,管理器和控制器之间的区别
命名类“ Handler”,“ Manager”或“ Controller”之间有什么区别吗?IE: ,PurchaseManager,。PurchaseHandlerPurchaseController 这些充分表达了相同的含义,还是它们之间有明显的区别? 如果没有与语言无关的答案,请考虑将Java作为语言。
21 java  naming 

1
您的代码中处理复数形式的标准是什么?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 当使用其复数和单数都相同的变量时,如何命名它们?有没有什么标准? 例如: Series[] series // Plural Series series // Singular 深入: 具体来说,我的系列集合需要称为系列(由于JSON格式),您是否考虑命名要添加到集合中的系列的单数形式Series s? 如: List<Series> series = new List<Series>(); Series s; while (someBool) { s = new Series(); s.Name = "Name"; while (anotherBool) { s.AddValue(someValue); } series.Add(s); }

7
给带有“ Info”后缀的类命名的想法是什么,例如:“ SomeClass”和“ SomeClassInfo”?
我正在一个处理物理设备的项目中工作,而在如何正确命名该项目中的某些类方面一直感到困惑。 考虑到实际的设备(传感器和接收器)是一回事,而它们在软件中的表示是另一回事,我正在考虑使用“ Info”后缀名称模式命名某些类。 例如,虽然a Sensor是代表实际传感器的类(当它实际上连接到某个工作设备时),但SensorInfo将仅用于代表此类传感器的特性。例如,保存文件后,我将序列化为SensorInfo文件头,而不是序列化Sensor,这甚至都没有道理。 但是现在我很困惑,因为在对象生命周期中存在一个中间立场,我无法决定是否应该使用一种或另一种,或者如何从另一种中获取一种,甚至不能将这两种变体实际上只折叠为一个类。 而且,太普遍的示例Employee类显然只是真实人物的表示,但EmployeeInfo据我所知,没有人会建议为该类命名。 我使用的语言是.NET,这种命名模式在整个框架中似乎很常见,例如这些类: Directory和DirectoryInfo班级; File和FileInfo班级; ConnectionInfo班级(无对应Connection班级); DeviceInfo班级(无对应Device班级); 所以我的问题是:使用这种命名模式是否有共同的理由?在某些情况下,具有成对的名称(Thing和ThingInfo)是否有意义,而在其他情况下,仅应存在ThingInfo该类,或者Thing该类没有对应物?

2
是否应该仅通过查看代码就总是知道API在做什么?
最近,我一直在开发自己的API,随着对API设计的投入,我一直对如何改善API设计非常感兴趣。 出现了几个方面(不是我的API用户使用,而是在我对该主题的观察讨论中):一个人应该只通过查看调用API的代码来知道它在做什么。 例如,请参见GitHub上有关此讨论的讨论,例如: foo.update_pinned(true, true); 仅仅通过查看代码(不知道参数名称,文档等),就无法猜测它会做什么-第二个参数是什么意思?建议的改进措施如下: foo.pin() foo.unpin() foo.pin_globally() 这就清除了一切(我猜第二个参数是是否全局固定foo),在这种情况下,我同意后者肯定会有所改进。 但是我相信,在某些情况下,设置不同但与逻辑相关的状态的方法最好作为一个方法调用而不是单独的方法公开,即使您仅通过查看代码也不知道它在做什么。(因此,您必须求助于参数名称和文档以查明-如果我不熟悉API,我个人将始终这样做)。 例如,我SetVisibility(bool, string, bool)在FalconPeer上公开了一种方法,并且我承认只看了一下这一行: falconPeer.SetVisibility(true, "aerw3", true); 您将不知道它在做什么。它设置了3个不同的值来控制falconPeer逻辑上的“可见性” :仅接受接受密码的加入请求,然后回复发现请求。将其分为3个方法调用可能会导致API的用户设置“可见性”的一个方面而忘记设置其他设置,而我仅通过公开一种方法来设置“可见性”的所有方面而迫使他们考虑。此外,当用户想要更改一个方面时,他们几乎总是会想要更改另一个方面,现在可以在一个呼叫中进行更改。

1
为什么C库使用同名的宏和函数?
我正在阅读PJ Plauger的“标准C库”,这真的很有趣。该书不仅说明了如何使用该库,而且还说明了其实现方法。 我已经阅读完本ctype.h节,并且在标头中将函数声明为两个宏AND函数。例如 int isdigit(int); 但是也 #define isdigit(c) (_Ctype[(int)(c)] & _DI) 我不明白为什么两者都使用? 另外,如果我尝试重新创建自己的自定义ctype标头和实现,则只有删除宏(注释中的注释),我才能成功编译。 书中并没有真正解释这方面。有人可以解释一下吗?
20 c  naming  functions  macros 

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.