在下面的人为例子中,这是命名我的“[Nn] ame”财产的正确方法吗?似乎.NET中的所有东西都是某种形式的Pascal案例。对于属性名称使用驼峰案件会被视为“糟糕的形式”吗?我读了MS guidelines on naming,他们说要用Pascal 案件。我真的很讨厌帕斯卡尔案,似乎就是这样。
一般商定的标准是什么(只是MS指南)还是无关紧要?如果我在这里使用骆驼箱,我会不好? TIA。
using System;
namespace Properties {
class Program {
static void Main() {
var tester = new Tester();
tester.Name = "jmquigley";
tester.name = "another jmquigley";
tester.Show();
}
}
class Employee {
public string Name { get; set; }
public string name { get; set; }
public void Show() {
Console.WriteLine("Name = {0}", Name);
Console.WriteLine("name = {0}", name);
}
}
class Tester : Employee {
}
}
注意:我在这里只使用了继承来查看在使用属性时如何处理属性(以查看是否所有内容都像字段一样)。
答案 0 :(得分:3)
Microsoft指南在整个.Net Framework中使用,并受到StyleCop,FXCop和ReSharper等工具的支持。对于属性而不是字段使用驼峰大小写只会让大多数期望相反的C#开发人员感到困惑。
答案 1 :(得分:3)
普遍认同的是什么? 标准(它只是MS指南)
是的,普遍认可的标准是Microsoft指南。
或者没关系?
您的代码将在不遵循指南的情况下正常运行,但如果符合以下条件,我将遵循约定:
答案 2 :(得分:1)
普遍认同的标准是Pascal案例。
有很多关于这个主题的指南:
如果任何可能会让其他人看到您的代码,我建议您遵循Pascal案例指南。
答案 3 :(得分:0)
骆驼案一般是做事的标准方式。虽然如果您正在从事个人项目,或者由于其他原因可以选择自己设置标准,那么它可能并不那么重要。
答案 4 :(得分:0)
关于标准的奇妙之处在于有很多选择。
坦率地说,这并不重要。如果你有ReSharper,它的默认设置是PascalCase的Name属性,因为它是一个公共属性。答案 5 :(得分:0)
当然你可以根据自己的意愿编写代码......只要确定如果你没有把所有内容都大写,那么每一个查看代码的.NET开发人员都会觉得它看起来很奇怪。
此外,您在C#中编程的任何工作都可能会要求您使用大写字母。
答案 6 :(得分:0)
Pascal案例在.NET世界占主导地位。
没有什么可以强迫你为自己的代码使用Pascal案例,但最终会混合使用pascal case(框架类型)和camel case(你自己的类型)。 不一致比不得不使用pascal case,imo。
更糟糕此外,如果你是一个更大团队的一员,或者某个程序员可能需要在将来维护你的代码,那么这是符合现状的另一个好理由。
答案 7 :(得分:0)
标准方式是属性的Pascal Case和带字母下划线的驼峰大小写。
public string Name { get; }
private string _name;
答案 8 :(得分:0)
嗯,我在野外看到的方式是属性通常是Pascal的情况。 Pascal案例倾向于用于属性,方法和类。
关于惯例要记住的重要一点是,要放宽两个人之间的沟通障碍,而不是个人偏好。当我在最初编写Java之后第一次启动C#时,转移到Pascal案例的世界是非常奇怪的,但回头看,我应该早些采用这些约定。