Pascal 命名法:每个单词首字母均大写,例如:FieldName。
Camel 命名法:第一个单词首字母小写,其余单词首字母大写,例如:fieldName。
命名空间
使用 Pascal 命名法。
| namespace System {} namespace System.IO {} namespace UnityEngine.UI {}
|
类,结构
使用 Pascal 命名法。
| public class FlightBuilder {} public class HotelInfo {} public struct TicketShopper {}
|
接口
接口使用大写字母 I 做前缀,其后使用 Pascal 方式。
| public interface ICache {} public interface IClone {}
|
枚举
使用 Pascal 命名法。
| public enum OrderFlag { None, First }
|
方法
使用 Pascal 命名法。
| public void ClearCache() {}
private char[] GetCharArray() {}
|
方法参数
使用 Camel 命名法。
| object GetCache(string cacheKey) {} bool IsInt(string needCheckString) {}
|
属性
使用 Camel 命名法。
| public string flightNo { get; set; }
|
常量
使用 Pascal 命名法。(建议使用此方法,单词比全大写更好辨认)
| public const int PageIndex = 6;
|
也有人建议所有单词大写,多个单词之间用下划线 _ 隔开。
| public const int PAGE_INDEX = 6;
|
私有成员变量
使用 m_ 开头,后面使用 Pascal 命名法。
| private string m_SpriteName = "";
|
私有静态成员变量
使用 s_ 开头,后面使用 Pascal 命名法。
| private static string s_SpriteName = "";
|
非私有成员变量
使用 Camel 命名法。同属性。
| public string flightNo = ""; public string flightNo { get; set; }
|
局部变量
使用 Camel 方式命名。
| int index = 6; string airline = string.Empty;
|
委托
使用 Pascal 命名法。
| delegate void RaiseEventHandler(string hand); public RaiseEventHandler raiseEvent; public event RaiseEventHandler raiseEvent;
|
缩进
使用 4 个空格。
大括号
独占一行,上下对齐。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| public class HotelInfo { public int number = 0;
public HotelInfo() { if (number > 10) {
} else if (number > 5) {
} else {
} } }
|
代码空行
- 方法与方法、属性与属性、属性与方法、属性与字段、方法与字段之间。
- 方法中不同逻辑块之间。
代码空格
- 关键字和左括符 “(”。
- 方法名和左括符“(”不要使用。
- 多个参数用逗号分隔,逗号后需要添加一个空格。
- 除了“.”之外,所有二元操作符需要空格分开。
- 一元操作符、++、–不能用空格分隔。
- 语句表达式之间用空格分隔,常见于for, if 语句中。
本文参考:
https://zhuanlan.zhihu.com/p/42178836
https://blog.csdn.net/VS18703761631/article/details/94615734
参考 UnityUI 源码命名规范:
https://bitbucket.org/Unity-Technologies/ui/