大家好,欢迎来到IT知识分享网。
在 .NET 平台和 C# 开发中,遵循一致的命名规则是确保代码可读性、可维护性和团队协作效率的关键。
1. 类和接口的命名
-
•
类名
:使用帕斯卡命名法(PascalCase),即每个单词的首字母大写,不包含下划线。类名应为名词或名词短语,避免使用缩写(除非是广泛认可的缩写)。例如:public class BankAccount { }
-
•
接口名
:接口名称以大写字母
I
开头,后跟帕斯卡命名法。例如:public interface ISortAlgorithm { }
2. 方法和属性的命名
-
•
方法名
:使用帕斯卡命名法,通常为动词或动词短语,清晰表达方法的功能。例如:public UserInfo GetUserInfo(int userId) { }
-
•
属性名
:使用帕斯卡命名法,通常为名词或名词短语。例如:public string FirstName { get; set; }
-
•
布尔属性
:布尔属性通常以
Is
、
Can
或
Has
开头,例如
IsEnabled
、
CanExecute
。
3. 变量和字段的命名
-
•
局部变量和参数
:使用驼峰命名法(camelCase),即第一个单词小写,后续单词首字母大写。例如:public void CalculateTotal(decimal totalPrice) { }
-
•
私有字段
:私有字段以
_
开头,后跟驼峰命名法。例如:private string _userName;
-
•
静态字段
:静态字段以
s_
开头,后跟驼峰命名法。例如:private static int s_totalCount;
-
•
线程静态字段
:线程静态字段以
t_
开头。
4. 常量的命名
-
•
常量名
:使用全大写字母,单词间用下划线分隔。例如:public const int MAX_USERS = 1000;
5. 枚举的命名
-
•
枚举类型
:使用帕斯卡命名法,非标记枚举使用单数名词,标记枚举使用复数名词。例如:public enum UserState { Success, Fail }
-
•
枚举成员
:也使用帕斯卡命名法。
6. 命名空间的命名
-
•
命名空间
:使用帕斯卡命名法,并遵循反向域名表示法。例如:namespace MyCompany.MyProduct { }
7. 其他注意事项
-
•
避免缩写
:除非是广泛认可的缩写,否则尽量避免使用缩写。
-
•
避免仅靠大小写区分标识符
:例如,不要同时使用
int x
和
int X
。
-
•
避免在不同作用域中重名
:例如,不要在局部变量和全局变量中使用相同的名称。
-
•
复数类型命名
:集合或数组优先使用复数形式,例如
userNames
或
userNameList
。
8. 常见命名规则
8.1 驼峰命名法(CamelCase)
规则:
-
• 单词之间不使用空格或下划线分隔。
-
• 第一个单词的首字母小写,后续单词的首字母大写。
示例:
firstName // 变量名
lastName // 变量名
calculateTotalPrice // 函数名
8.2 蛇形命名法(Snake_Case)
规则:
-
• 单词之间用下划线
_
分隔。
-
• 所有单词的字母都小写。
示例:
first_name // 变量名
last_name // 变量名
calculate_total_price // 函数名
8.3 帕斯卡命名法(PascalCase)
规则:
-
• 单词之间不使用空划线或下划线分隔。
-
• 所有单词的首字母都大写。
示例:
FirstName // 变量名
LastName // 变量名
CalculateTotalPrice // 函数名
8.4 大写常量命名法(SCREAMING_SNAKE_CASE)
规则:
-
• 所有字母大写,单词之间用下划线
_
分隔。
示例:
MAX_SIZE // 常量名
PI // 常量名
8.5 匈牙利命名法(Hungarian Notation)
规则:
-
• 在变量名前添加前缀,表示变量的类型或用途。例如:
-
•
intCount
(表示一个整型变量)
-
•
strName
(表示一个字符串变量)
8.6 其他命名规则
-
•
Kebab Case(短横线命名法)
:
-
• 单词之间用短横线
-
分隔,常用于 HTML 类名、CSS 属性等。例如:
first-name
、
calculate-total-price
。
-
•
Upper CamelCase(大驼峰命名法)
:
-
• 与帕斯卡命名法类似,但通常用于特定场景,如某些语言的模块名或包名。
https://learn.microsoft.com/zh-cn/dotnet/fundamentals/code-analysis/style-rules/naming-rules
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/169187.html