我已经阅读了有关命名约定的msdn网站,但没有“终极”示例显示何时使用大写字母或lowerCase字母。
ip
(下方)吗? 第3。任何人都可以发布一个C#代码的正统样本。(没有C ++,Java或任何其他语言的基础)?在Java编程很长一段时间后,我感到非常困惑。
public partial class VideoStream : UserControl {
private String IP; //should I use Camel or Pascal here?
public VideoStream() {
InitializeComponent();
}
public VideoStream(String ip) {
IP = ip;//it looks weird
}
}
答案 0 :(得分:4)
private
字段应始终位于驼峰符号中。通常,您的类暴露出来的所有内容都应该是 pascal符号,所以如果您的静态字段是private
,那么它应该是骆驼符号,否则应该在中帕斯卡符号。
参考:MSDN
答案 1 :(得分:2)
我会将你推荐给Framework Design Guidelines,但老实说,我们并没有严格遵循这些规则。对于私有,非静态字段,我们使用以下划线开头的驼峰大小写,例如_myIntVar
。在你的情况下,它是_ip
。如果您真的关心您可能选择的任何约定,我建议您使用Resharper。
FWIW,我不喜欢这样一个事实:当谈到.NET中的网络/套接字时,微软的命名不一致。例如,他们使用IPAddress
但TcpListener
和UdpClient
。我项目中与套接字相关的所有代码都使用TcpXxx
与TCPXxx
,因此我会首选IpAddress
来保持一致性。
答案 2 :(得分:0)
private string _ip;
public string Ip
{
get { return _ip;}
set { _ip = value;}
}
答案 3 :(得分:0)
添加我的评论作为答案:
我看到_Variable
命名的支持字段非常多(注意下划线)。 _IP = ip;
看起来稍微不那么尴尬。您还可以进一步了解this._IP = ip;
只是为了进一步明确。
为什么要附上看似随机的要求?它来自哪里有什么关系?这是一个惯例,无论如何,C#的大多数约定都将继承或受其他语言的影响。